Ovo je život - portal za žene

Najpametniji: kako su se razvijale karijere pobjednika svjetskih IT prvenstava. Svjetski prvaci - o sportskom programiranju

Pobjeda nikad nije previše! Svaki sljedeći je još slađi od prethodnog. Tim sa Univerziteta za informacione tehnologije, mehaniku i optiku iz Sankt Peterburga osvojio je glavni kup ACM ICPC Svjetskog prvenstva u programiranju 2017. godine. Ovo je sedma pobjeda ITMO-a na najprestižnijem intelektualnom turniru za mlade programere.

Bitka najsposobnijih

Takmičenje najboljih studenata programera iz više od stotinu zemalja širom svijeta počelo je 20. maja u Rapid Cityju u Južnoj Dakoti, SAD. Učestvovalo je 128 ekipa, od kojih 13 predstavlja Rusiju, a tri iz Sankt Peterburga. Finale su čekale ne samo ekipe, već i navijači koji su pratili direktan prenos. Da bi postali svjetski prvaci, mladi programeri su morali ispravno riješiti što je moguće više od 12 zadataka koji su im zadati.

Bitka se pokazala teškom. Ekipe su bukvalno stale jedna drugoj za petama. Nakon 40 minuta takmičenja, budući prvaci su riješili samo tri problema i bili tek na devetom mjestu na tabeli. Ali su vjerovali. br. Znali su da mogu bolje i brže. Nakon još 20 minuta ITMO tim je već riješio pet zadataka i prestigao sve svoje konkurente. Nakon osam zadataka vođa se promijenio. No, deveti je ponovo vratio tim iz Sankt Peterburga na prvo mjesto. Nakon deset riješenih problema, ekipe su se ukočile u iščekivanju rezultata.


Čekamo rezultate. Fotografija: Katedra za CT Univerziteta ITMO "VKontakte"

Sedmostruki šampioni

Upravo su poznati rezultati studentskog prvenstva u sportskom programiranju ACM ACPC-2017. Tim Univerziteta ITMO zauzeo je prvo mjesto, dodavši još jednu na svojih šest pobjeda, saopšteno je dobre vijesti na zvaničnoj stranici univerziteta na društvenoj mreži u 01:36 po moskovskom vremenu.

Programeri sa Univerziteta ITMO potvrdili su svoj svjetski rekord, a pobjednički pehar najprestižnijeg studentskog turnira među programerima ponovo ide u Sankt Peterburg.

Univerzitetski tim je uspio riješiti 10 od 12 problema, utrošivši na to najmanje vremena. To je vrijeme potrebno za rješavanje problema i to manjeg broja neuspjeli pokusaji prolazak kroz njih osigurao je timu sedmi ACM ICPC kup, javlja ITMO-ova press služba.

Evo ih, heroji!

Sedmu pobedu Univerzitetu ITMO na ACM ICPC, rešivši 10 od 12 problema brže i kompetentnije od svih konkurenata, doneli su studenti Odseka za računarske tehnologije Ivan Belonogov, Ilja Zban i Vladimir Smikalov. Trener pobedničkog tima je vanredni profesor Katedre za računarsku tehnologiju, kandidat tehničkih nauka Andrej Stankevič.


Kulminacija Svjetskog prvenstva u programiranju ACM ICPC-2017 održana je 24. maja u Rapid Cityju (SAD). Tim Univerziteta ITMO postao je apsolutni šampion, rješavajući 10 od 12 problema brže i kompetentnije od svojih protivnika. Tako je univerzitet iz Sankt Peterburga postavio novi rekord u istoriji takmičenja: timovi Univerziteta ITMO postali su po sedmi put pobednici ACM ICPC, što nijedan univerzitet na svetu nije postigao. Studenti Odseka za računarske tehnologije Vladimir Smikalov, Ivan Belonogov i Ilja Zban podigli su šampionski pehar iznad svojih glava. Ove godine u finalu najprestižnijeg takmičenja među programerima učestvuju 133 tima iz svih regiona sveta, koje je održano već 41. put.

Svečana dodjela nagrada tima Univerziteta ITMO

Univerzitetski tim je uspio riješiti 10 od 12 problema, utrošivši na to najmanje vremena. Bilo je to vrijeme koje je bilo potrebno za rješavanje problema i manji broj neuspješnih pokušaja da ih se prođe koji su osigurali timu sedmi ACM ICPC kup. I ostali "zlatni" timovi, koji su činili četvoricu lidera takmičenja, takođe su rešili po deset zadataka. Tim je bukvalno bio vruć za petama svjetskih prvaka Univerzitet u Varšavi, bivši favorit ACM ICPC-2017. Na trećem mjestu su programeri sa Nacionalnog univerziteta u Seulu. Tim St. Petersburg State University završio je sa četvrtim rezultatom. - prošlogodišnji šampion. Tim Univerziteta ITMO čine studenti Fakultet informacionih tehnologija i programiranjaVladimir Smykalov(prva godina master studija na Odsjeku za računarstvo), Ivan Belonogov(četvrta godina osnovnih studija na Odsjeku za računarstvo) i Ilya Zbanya(četvrta godina osnovnih studija na Odsjeku za računarstvo). Trener tima bio je vanredni profesor Katedre za računarsku tehnologiju, kandidat tehničkih nauka Andrej Stankevič, koji je trenirao više od jedne generacije sportista programera. Godine 2016. dobio je prestižnu nagradu ACM ICPC Senior Coach Award jer je 15 godina vodio svoje trenere do finala takmičenja.

„Takmičenje je proteklo iznenađujuće glatko,- dijeli utiske Ivan Belonogov. - U nekim problemima smo se intuitivno oslanjali na činjenice koje nismo mogli u potpunosti dokazati, a instinkti nas nisu iznevjerili. Uspjeli smo proći 10 problema za skoro četiri sata i to nam je ulilo dobro samopouzdanje. Ali tek na samom kraju, kada smo prošli deseti zadatak, pomislio sam: „Dobro, izgleda da ću moći da uzmem zlato!“

Drugi ruski timovi također su postali dobitnici nagrada: tim MIPT-a odlazi sa ACM ICPC “srebrom”, a Uralski federalni univerzitet sa "bronza" takmičenja. Ukupno, ove godine Rusiju je predstavljalo 13 ekipa - jedna više nego prošle godine, uključujući po tri iz Moskve i Sankt Peterburga, kao i iz drugih gradova: Saratova, Perma, Petrozavodska, Novosibirska, Samare, Tomska i Jekaterinburga. Ekipe iz Ruske Federacije sudjeluju na prvenstvu od 1993. godine, a od 2000. godine 12 puta su pobjeđivale na takmičenju, uključujući i ove godine.

Kompletnu tabelu rezultata možete pronaći na ovom linku.

“Svi timovi koji su uvršteni u TOP 12 više puta su proglašavani za favorite - nije bilo velikih iznenađenja. U poređenju sa prethodnom godinom, Azijski univerziteti pokazali su snažan iskorak: prošle godine su dobili samo dvije medalje, a sada čak sedam. Međutim, u svakoj regiji ima mnogo jakih timova, a konkurencija je sve intenzivnija.", - komentira mentor tima Univerziteta ITMO Andrej Stankevič.

Poslednji sat takmičenja, priznao je trener, nije bio ništa manje uzbudljiv za njega nego za njegove igrače.

“Nakon što je stanje na tabeli zamrznuto, momci nemaju načina da pokažu treneru da li je zadatak položen, ali ovog puta, videvši sliku sa ekrana njihovog kompjutera tokom prenosa, primijetio sam da su nakon slanja posljednjeg zadatka, G, brzo prešao na stranicu sa rezultatima i pomislio: To znači da je sve u redu, prošli smo. Ovo nije bio zadatak koji je vrijedilo napustiti ako je odgovor pogrešan.”, - dijeli trener.

Tradicionalno, kao i ove godine, takmičenje je trajalo pet sati. Za to vrijeme učesnici moraju riješiti probleme orijentirane na praksu. Posebnost takmičenja je u tome što tri ekipe sede ispred jednog kompjutera. Stoga, pored logike i sposobnosti rada pod pritiskom, moraju pokazati vještine timske igre i pravilnu raspodjelu uloga. Da biste riješili neke probleme, potrebna vam je samo tačnost i pažnja, napominju organizatori prvenstva. Ostali zadaci zahtijevaju dubinsko poznavanje različitih algoritama. Rezultat rada tima najčešće je izvjestan softver, koji ispunjava navedene uslove. Problemi se provjeravaju automatski pomoću testova koje unaprijed priprema žiri, a rješenja se provjeravaju u realnom vremenu. Uzima se u obzir kompletnost i brzina izvršavanja zadatka, kao i broj pokušaja tima da riješi određeni problem. Timovi nemaju uvijek vremena da se nose sa svima. Tako strogi uslovi odgovaraju pravi zivot: uostalom, klijent jednostavno može odbiti usluge programera ako drugi gubi vrijeme i resurse prvog.

Da biste došli do ACM ICPC finala, prvo ste morali proći lokalnu selekciju na svom univerzitetu. Obično više od 300 hiljada ljudi učestvuje u ovim događajima. Zatim prolaze, u kojima se određuju lideri dostojni finala. ICPC šampioni dobijaju trofej Svjetskog prvenstva i značajnu novčanu nagradu, koja ove godine iznosi 15.000 dolara. Preostale pobjedničke ekipe također ne odlaze bez finansijske nagrade.

Međunarodno takmičenje u univerzitetskom programiranju održava se svake godine od 1977. godine pod pokroviteljstvom Asocijacije za računarske mašine (ACM, sa sedištem u Njujorku). ACM ICPC je i ove godine postavio novi rekord po broju učesnika. U regionalnim kvalifikacionim fazama učestvovao je ukupno 46.381 student sa skoro tri hiljade univerziteta. Prošle godine se tokom šampionata takmičilo nešto više od 40.000 programera. Prema statistici organizatora događaja, broj učesnika se povećao za 2000% od 1997. godine, godine kada je IBM počeo podržavati prvenstvo.

DataArt je dugo bio prijatelj sa ITMO timom za sportsko programiranje i pomaže im. Ovog leta Ilja Zban, Ivan Belonogov i Vladimir Smikalov došli su u posetu našem razvojnom centru u Sankt Peterburgu. Svjetski prvaci 2017. govorili su o tome kako se programeri međusobno takmiče, o kampovima za obuku, omiljenim zadacima i najjačim protivnicima.

Olimpijada iz programiranja

Glavno takmičenje programera - Međunarodna studentska olimpijada pod okriljem ACM-a (ACM-ICPC, ili jednostavno ICPC) - održava se od 1970-ih, a u obliku bliskom današnjem oblikovalo se 1989. godine. Olimpijada je namijenjena studentima dodiplomskih i postdiplomskih studija, uz rijetke izuzetke, programeri stariji od 24 godine ne smiju se takmičiti. Osim toga, snagu u finalu možete odmjeriti samo dva puta, a učešće u regionalnim selekcijama imate samo pet puta. Hiljade timova takmiče se u ranim fazama, koje se održavaju širom svijeta. Stotinu najboljih stiglo do finala.

Osnovna pravila

Timovi se sastoje od tri osobe, a svaki tim ima na raspolaganju samo jedan računar. Pre početka takmičenja, svima se daju koverte sa zadacima algoritamske ili matematičke prirode - od osam do 13 komada - koje moraju da reše za pet sati. Rješenje problema je program koji čita tekstualni zahtjev i proizvodi tekstualni odgovor. Za provjeru, rješenje se pokreće na stotinak testova koje je unaprijed pripremio žiri - priznaje se kao tačan samo ako je odgovor tačan u svakom od testova.

Pravila ICPC-a su vrlo jasno navedena u video, objavljen za Uralsko prvenstvo u programiranju - jednu od primarnih faza selekcije za Olimpijske igre. One su iste za sve regije i ostale su nepromijenjene od 2013. godine.

Jezici i okruženje

U finalu 2017., dostupni jezici su bili Java, C++ i Python. Međutim, jasno je da Python, u principu, nije baš brz - žiri nije garantovao da će pomoću njega biti moguće proći zadatak. Međutim, to je dalo garanciju da imaju rješenja napisana na ovim jezicima koja su prošla sve testove.

Na različitim takmičenjima, skup jezika može biti različit. Na primjer, Codeforces online platforma dozvoljava oko 20 jezika: od C++ i Jave do Haskell i Perl.

Najviše timova u finalu piše u C++, jer brzina dolazi do izražaja. Kao razvojno okruženje, mnogi timovi koriste VIM (na primjer, Ivan i Ilya su radili u njemu) ili Gina (Vladimir je radio u njemu). Oni koji pišu u Javi obično koriste okruženje kao što je Eclipse, pošto je pisanje u Javi bez automatskog dovršavanja mnogo teže.

Možemo očekivati ​​promjene u bliskoj budućnosti, budući da će finale sada sponzorirati JetBrains (20 godina do kraja maja 2017. ICPC je sponzorirao IBM). To znači da će se na njima pojaviti i proizvodi sponzora: IDEA za Javu i CLion za C++. Možda će nakon toga timovi početi naširoko koristiti debuggere, iako se za sada uglavnom snalaze bez njih.

Evolucija zadataka

Početkom 2000-ih dominirali su zadaci grube sile sa malim ograničenjima; sada ima više zadataka na strukturama podataka. Istovremeno, u svijetu postoji nekoliko prilično izolovanih škola sportskog programiranja: dok u Poljskoj vole ideološke, često matematičke probleme, u Kini preferiraju složene tehničke, gdje morate napisati puno koda, npr. , računanje kombinatorike.

Cilj je uvijek doći do i implementirati rješenje koje brzo funkcionira. Svaki problem se može nekako riješiti, na primjer, pisanjem programa koji će jednostavno iterirati kroz sve moguće opcije. Ali posljednjih godina, problemi koji uključuju pisana pretraživanja praktično se nikada nisu naišli.

Postoje ograničenja u vremenu i memoriji, ali u praksi se rijetko pojavljuju problemi s rješenjem koje koristi previše memorije. Vremensko ograničenje za svaki test je obično od jedne do tri sekunde, ovisno o zadatku - to je također naznačeno u uvjetu.

Problemi sa uzorcima

Problemi mogu biti različiti: na grafovima, linijama, geometriji itd. Recimo, izračunajte najkraći put između gradova na mapi. Ili izgradite najdužu moguću pistu na ostrvu predstavljenom kao nekonveksni poligon. Zadatak bi mogao biti upoređivanje tekstova - pronalaženje najvećeg zajedničkog podniza za par nizova.

Drugi format su interaktivni zadaci, gdje se od vas traži da igrate neku igru ​​po sistemu koji je napisao žiri. U jednom od polufinala bilo je potrebno napisati program koji bi u 90% slučajeva mogao nadmašiti predloženi tic-tac-toe algoritam. Mogu se vidjeti problemi iz prošlih finala, uključujući i posljednje.

Proces rješenja

U osnovi, članovi tima sortiraju listove sa uslovima u zavisnosti od njihovih ličnih preferencija: neki više vole probleme sa linijama, drugi vole probleme sa geometrijom. Generalno individualni rad ovdje prevladava nad timskim.

Prvi korak je osmišljavanje algoritma za rješavanje jednog od problema. Ponekad autor rješenja o tome razgovara s timom kako bi se uvjerio da je rješenje matematički ispravno. Nakon toga, autor sjeda da piše kod, dok druga dva učesnika nastavljaju razmišljati o rješenjima drugih problema. Kada je kod napisan, može se testirati u odnosu na test slučajeve, koji su obično pridruženi uslovu, i poslati sistemu na evaluaciju. S obzirom da je vrijeme rada na računaru ograničeno (zapamtite da učesnici imaju samo jedan računar), na takmičenjima je uvijek prisutan štampač: ako neko rješenje ne radi, neko – najčešće njegov autor – traži greške štampajući kod na papiru.

Karakteristike koda

S jedne strane, ljudi koji se bave sportskim programiranjem znaju pisati kod brzo i jasno i pod stresnim uslovima. S druge strane, često su kritizirani zbog činjenice da ovaj kod sadrži nejasne varijable i da ga je teško čitati. U kodu koji se piše na takmičenjima, zaista nema dugih, razumljivih naziva varijabli - uostalom, neće se morati održavati godinu dana. Međutim, na visokom nivou ovaj problem nije toliko akutan, jer kod i dalje treba da bude razumljiv saigračima.

Još jedna karakteristika sportskog programiranja je da testni sistem ni na koji način ne procjenjuje oslobađanje memorije - rješenje radi samo nekoliko sekundi.

Algoritmi

Poznajemo dosta algoritama, koristimo različite strukture podataka: stablo segmenata, Fenwickovo stablo, kartezijansko stablo, itd. Ponekad moramo sami napisati uravnoteženo stablo pretraživanja, istovremeno ga modificirajući tako da smatra definirane informacije uslovom problema. Na primjer, u jeziku C++ postoji struktura skupa koja može podržati skup brojeva i, na primjer, pronaći sljedeće. Zadatak može zahtijevati pronalaženje ne sljedeći broj, već zbir svih brojeva manjih ili jednakih datom. Ovo se ne može postići upotrebom standardnih struktura.

Ne možete ponijeti nikakve fragmente koda sa sobom, ali na Svjetskom prvenstvu možete koristiti takozvanu timsku referencu - skup algoritama ispisanih na papiru. Iako možemo puno toga pisati u hodu, ove godine smo potrošili dosta vremena na pripremu - testirali smo više složeni algoritmi. Ali na kraju zapisnici uopće nisu korišteni.

Količina koda ne utiče direktno na konačnu ocjenu, druga stvar je što je teško napisati 1000 redova u predviđenom vremenu. A nakon što ste smislili lijepo, lakonično rješenje, možete to učiniti za samo 10-15 minuta. Upravo za potragu za tako elegantnim načinima većina uslova je prilagođena: prosječan volumen rješenja je 100-200 linija koda, iako u nekim slučajevima može doseći i do 300. U običnom životu 300 redova nije tako mnogo, ali ovdje imate samo pet sati za rješavanje svih problema. Morate pisati brzo, a ako se napravi greška u tri stotine redaka, zadatak neće proći, što znači da će svo vrijeme utrošeno na rješavanje jednostavno biti izgubljeno. Osim toga, što je kod duži, to je teže pronaći grešku u štampanoj verziji.

Ostali turniri i treninzi



Novčane nagrade su daleko od glavne motivacije učesnika turnira. Na fotografiji: Ivan Belonogov i Ilja Zban - pobjednici VK kupa 2015 (izvor - stranica Ivana Belonogova). 2017. treći član tima ITMO šampionata, Vladimir Smykalov, postao je pobednik VK kupa.

Stalno učestvujemo na pojedinačnim turnirima - ima ih puno. Na primjer, takmičenja na ruskoj web stranici Codeforces redovno privlače nekoliko hiljada ljudi, od kojih su obično oko 20% Rusi. Standardni krug ovdje se sastoji od pet algoritamskih problema koje treba riješiti za dva sata. Najvažnija stvar u zajednici koja se razvila oko ovog resursa je lični rejting, izračunat po Elo sistemu, kao u šahu. Uspješnim nastupom na turnirima programeri dobijaju bodove - određeni broj njih automatski mijenja boju svog nadimka. Oni sa crvenim nadimcima dobijaju ne samo zahtjeve za pomoć, već i ponude od poslodavaca. I što je najvažnije, kao i svaki šampion sportaš, uživaju univerzalno poštovanje - za mnoge učesnike, "crveni nadimak" sam po sebi služi kao dovoljan poticaj za borbu.


Hladniji od crvenih nadimaka, samo crveni nadimci sa prvim crnim slovom. U prvih dvadeset na Codeforces-u 13. jula bilo je osam Rusa, po dvoje iz Ukrajinaca, Poljaka i Kineza, te po jedan predstavnik iz Švicarske, Australije, Koreje, SAD-a, Tajvana i Bjelorusije. Istovremeno, bjeloruski programer sada je na vrhu rejtinga, iako se u principu promjene u tabeli događaju stalno.

Glavna takmičenja održavaju Mail.ru, Yandex, Facebook, Google i druge kompanije. Na primjer, 20 hiljada ljudi učestvovalo je u prvom kolu trenutnog Google Code Jam turnira. Hiljadu najbolje primljenih brendiranih majica, 25 ide u finale koje će se ove godine održati u Dablinu.

Pored Google Code Jam-a, Google je održao još jedan turnir - Hash Code, čije je finale održano u sjedištu kompanije. Učesnici su, posebno, dobili planove izgradnje koje je trebalo pokriti što je više moguće mrežom Wi-Fi tačaka, koristeći što manje rutera i žica. Za takav problem ne postoji optimalno rješenje, ali ga je, naravno, moguće riješiti bolje od drugih.


Jedna od zgrada u kojoj su organizatori Google Hash Codea predložili postavljanje rutera bila je Paris Grand Opera.

Posebnu vrstu takmičenja predstavlja AI kup, gdje je potrebno napisati program umjetne inteligencije koji može igrati protiv originalnog programa koji su organizatori obezbijedili u obliku biblioteke. Igre su kreirane posebno za turnire, odnosno u principu ih ne možete igrati rukama. Ali skripte su odabrane tako da je strategija pisanja za njih zanimljiva.


Ovogodišnja igra je bila slična modernim MOBA-ima: rješenje je bilo kontrolirati tim od pet čarobnjaka, omogućavajući im da razmjenjuju komande koristeći kodne riječi.

Slična takmičenja se stalno održavaju na francuskoj web stranici CodinGame. I lijepo je što na AI turnirima postižemo dobre rezultate, zauzimajući mjesta u prve dvije dvadeset bez ikakve obuke. Na kraju krajeva, glavna vještina sportskog programiranja je sjediti, razmišljati i pisati kod.


Američki srednjoškolski tim za sezonu 2017/18. Uspjeh u sportskom programiranju u Americi uglavnom postižu mladi ljudi azijskih korijena.

Programeri iz Sjeverna Koreja, koji u uslovima ograničenog pristupa Internetu i dalje treniraju i često rade prilično dobro. Istina, ove godine nisu došli do finala u SAD, a u Codeforcesu su stekli reputaciju varalica. Konkretno, sjevernokorejski učesnici online turnira optuženi su da su eksplicitno pisali kod sa jednog naloga različiti ljudi. A ovo je strogo zabranjeno pravilima.


Ove godine samo jedan tim je ušao u prvih deset na međunarodnim Olimpijskim igrama. zapadna evropa- studenti Kraljevskog instituta za tehnologiju iz Stokholma.

Uspjesi Rusije izgledaju sasvim razumljivi, jer ovdje postoji vrlo jaka matematička škola i uspostavljena zajednica učesnika olimpijade, spremnih da pomognu početnicima. U Rusiji, pored ITMO, veoma jake timove predstavljaju Državni univerzitet Sankt Peterburg (prošlogodišnji šampioni), Moskovski državni univerzitet, Moskva Phystech, univerziteti u Jekaterinburgu i Saratovu, iako s vremena na vreme drugi univerziteti uspevaju da okupe dobre timove .


Na fotografiji je još jedan ITMO tim: Artem Vasiljev i Borisa Minaev i Genady Korotkevich - svjetski prvaci 2015. Pehari Međunarodne olimpijade iz programiranja nisu prenosivi - sada ih je već sedam pohranjeno u ITMO-u. Dodaj oznake

MOSKVA, 19. april. /TASS/. Ruski studenti osvojili su Svjetsko prvenstvo i četiri od 13 medalja na prestižnom ICPC svjetskom prvenstvu u programiranju, čije je finale održano u četvrtak u Pekingu. Riječ je o timovima studenata sa četiri ruska univerziteta – Moskovskog državnog univerziteta. Lomonosov, MIPT, ITMO i Uralski federalni univerzitet, saopštila je pres služba MIPT-a.

„Ruski učesnici su osvojili Svetsko prvenstvo i četiri medalje od 13 - više od ostalih zemalja učesnica: timovi iz Kine i SAD dobili su po tri medalje, Japan je dobio po jednu, sjeverna koreja i Litvanije. Moskovski državni univerzitet osvojio je prvo mjesto i Kup šampiona. Pored Moskovskog državnog univerziteta, „Zlato“ su dobili i MIPT, Univerzitet u Pekingu i Univerzitet u Tokiju. Srebro je pripalo Univerzitetu u Seulu, Univerzitetu Južnog Velsa, Univerzitetu Xinhua i Univerzitetu Jao-tong u Šangaju. “Bronzu” su osvojili Univerzitet ITMO, Univerzitet Centralne Floride, Tehnološki univerzitet Masačusetsa, Univerzitet u Vilniusu i UrFU”, saopšteno je iz pres službe.

Svjetsko prvenstvo u programiranju

International Collegiate Programming Contest (ICPC) je najstarije, najveće i najprestižnije prvenstvo u sportskom programiranju na svijetu. Takmičenje se održava svake godine od 1977. godine pod pokroviteljstvom Udruženja računarskih mašina (ACM). Timovi koji su prošli višeetapnu selekciju na regionalnim etapama ulaze u finale prvenstva.

Ove godine, oko 50 hiljada najboljih studenata programera sa oko 3 hiljade univerziteta iz 111 zemalja takmičilo se na ICPC šampionatu, uključujući i regionalne kvalifikacione turnire.

Ruski programeri već dugi niz godina vode svjetsko prvenstvo. Od 2000. godine timovi iz naše zemlje osvajaju ICPC po 13. put. Šest godina, od 2012. do 2017., Svjetsko prvenstvo su međusobno prenosile dvije ekipe iz Sankt Peterburga - Državni univerzitet Sankt Peterburga i Univerzitet ITMO, koji drži svjetski rekord po broju šampionskih titula: ima sedam kupova do njegovo ime. Najbliži strani rivali, američki Stanford i kineski univerzitet Zhao Tong, imaju po samo tri pobjede.

Timovi iz Ruske Federacije učestvuju na ICPC-u od 1993. godine.

U ICPC-u se takmiče timovi od tri studenta ne starijih od 25 godina. Timu je na raspolaganju samo jedan računar, stoga, pored logike i sposobnosti rada u kratkim vremenskim okvirima, takmičari moraju pokazati vještine timske interakcije i pravilno rasporediti uloge. Pobjednik je tim koji pravilno riješi najveći broj zadataka i ujedno pokaže najbolje vrijeme.

Svi ICPC pobjednici dobijaju novčanu nagradu: šampionski tim - 15 hiljada dolara; timovi koji su osvojili zlatne medalje - po 7,5 hiljada dolara; osvajači srebrnih medalja - po 6 hiljada dolara, a timovi koji su osvojili bronzu - po 3 hiljade dolara.

VAŠINGTON, 25. maja- RIA News. Tim Nacionalnog istraživačkog univerziteta za informacione tehnologije, mehaniku i optiku (ITMO) iz Sankt Peterburga osvojio je svjetsko prvenstvo u sportskom programiranju ACM ICPC (International Collegiate Programming Contest), objavili su organizatori nakon rezultata onoga što je u srijedu održano u Rapidu. Finale Cityja (Južna Dakota, SAD).

Za pobedu su se borili Ivan Belonogov, Vladimir Smikalov i Ilja Zban. Momci su uspjeli riješiti 10 od 12 problema brže i kompetentnije od svojih protivnika. Tim je pripremao trener Andrej Stankevič. Prošle godine je dobio prestižnu nagradu ACM ICPC Senior Coach Award, koja se dodeljuje trenerima čiji su učenici 15 ili više godina ušli u finale takmičenja.

© Ruptly

Putin je u šali ponudio da podrži glasine o ruskim planovima za stvaranje teleportaPožalili su se Putinu da su mediji izvukli iz konteksta informaciju o razvoju kvantne teleportacije, zbog čega je izbačena riječ "kvant", a vijest o teleportaciji naširoko se proširila internetom.

Kako je predstavnica ITMO-a Lidija Perovskaja rekla za RIA Novosti, „svake godine zadaci prvenstva postaju sve teži, postoji stalna trka znanja i postavlja se veoma visoka letvica“. Priznala je da je "iako je pobjeda (tima) bila vjerovatna, ipak je bila neočekivana" i "apsolutno nevjerovatna".

Drugo mjesto zauzela je ekipa Univerziteta u Varšavi, treće mjesto zauzeli su momci sa Nacionalnog univerziteta u Seulu, četvrto mjesto osvojili su prošlogodišnji šampioni - tim Univerziteta Sankt Peterburg (SPbSU). Timovi sa još dva ruska univerziteta - MIPT-a i Uralskog federalnog univerziteta - stigli su do finala i također postali pobjednici prvenstva.

Na godišnjem prvenstvu učestvovalo je više od 130 ekipa iz cijelog svijeta, od kojih je 13 ruskih. Prošle godine Svjetsko prvenstvo međusobno prenose dva ruska tima - Državni univerzitet u Sankt Peterburgu i Univerzitet ITMO. Potonji ima sedam šampionskih titula – ovo je apsolutni ACM ICPC rekord. Na drugom mjestu je Državni univerzitet Sankt Peterburga sa četiri pehara, dok njegovi najbliži strani rivali, američki Stanford i kineski Zhao Tong univerzitet, imaju po tri pobjede.

ACM ICPC Championship, sponzoriran od strane IBM-a, održava se svake godine od 1977. godine, a za to vrijeme njegova zlatna medalja i pobjednički pehar postali su jedna od "najcjenjenijih kompjuterskih nagrada na svijetu". Ruski univerziteti osvojili su 12 titula šampiona.

ACM ICPC uključuje timove od tri osobe, sa samo jednim računarom na raspolaganju. Finalna utakmica traje pet sati. Pobjeđuje ekipa koja za najkraće vrijeme riješi najviše problema. Svaki zadatak uključuje opis određene fiktivne situacije (legende), primjere testova i formalna ograničenja. Da bi riješili problem, učesnici treba da "prevedu" uslove na jezik matematike, zatim razviju algoritam rješenja i napišu kod.

Nagrada za pobjednike ACM ICPC 2017 bila je 15 hiljada američkih dolara.

Sljedeće finale Svjetskog prvenstva biće održano 2018. godine u Pekingu (NR Kine).



Da li vam se svidio članak? Podijelite sa svojim prijateljima!
Je li ovaj članak bio od pomoći?
Da
br
Hvala na povratnim informacijama!
Nešto nije u redu i vaš glas nije uračunat.
Hvala ti. Vaša poruka je poslana
Pronašli ste grešku u tekstu?
Odaberite ga, kliknite Ctrl + Enter i sve ćemo popraviti!