ICPC 2013 - finále největší programátorské soutěže v Ruském Petrohradě
Kapitoly článků
Druhý den se konal pro soutěžící společný oběd a tzv. ICPC Challenge - Výzva ICPC. Každý rok připravují tuto relaxační minihru dobrovolníci, kterých je organizační skupina doslova plná. A nejsou to žádní amatéři - na letošní výzvě spolupracovali bývalí studenti Saratov University pod vedením Mikea Mirzayanova - zakladatele oblíbeného webu CodeForces.com a hlavního kouče týmu Saratov State University. Minihra spočívá v souboji dvou hráčů o zlato v herním světě plném zombíků.
Tahle skákačka ale neprověří váš postřeh a schopnost, jak rychle utéct nepříteli a vylézt po žebříku pro zlato. Chování panáčka si musí každý tým naprogramovat a otestovat v předběžných soutěžích s ostatními. To jsem si ale předem nezjistil a celý hromadný oběd, během kterého probíhala soutěž, byl pro mě velmi silným zážitkem. Jednak jsem marně hledal hráče u počítačů v uzavřené hokejové hale, kde jsme obědvali ve velkém, a také jsem nemohl pochopit, jak je u všech všudy možné, že může být někdo takhle rychlý na klávesnici. Preciznost chování postaviček mě přivedla k závěru, že se tu holt někdo hodně dlouho připravoval.
Celý projekt měl za účel odlehčit atmosféru nadcházející nelítostné bitvy týmů. Úspěšným týmům se tleskalo a u těsných výher byly slyšet výkřiky. Akce demonstrovala, jak se baví světoví programátoři. Měl jsem také čas trochu si prohlédnout rozložení sil. Hodně týmů dorazilo z Asie, převážně z Číny a Ruska, početná byla skupina americká, kde měli své zástupce věhlasné univerzity jako MIT, Stanford a Carnagie Mellon. Z Evropské části přijely 3 týmy ze silného Polska a hned několik z evropského Ruska včetně horkého favorita petrohradské ITMO. Česká republika letos postrádala své zástupce, za slávou však přijeli bratři Slováci z bratislavské Univerzity Komenského.
Vlevo: (zleva) Tomáš Belan, Peter Fulla a Vladimír Broža; Vpravo: kouč výpravy Univerzity Komenského Michal Forišek
Velký den
Celosvětové finále tohoto ročníku soutěže ICPC se konalo 3. července v hlavní hale hokejového stadionu Jubilee v centru Petrohradu. Hrací plocha byla samozřejmě bez ledu a kompletně pokryta stoly v několika řadách. Každý stůl s nízkými zdmi na třech stranách sloužil jako vlastní "buňka" pro jednotlivé týmy, což mělo vytvářet alespoň lehký pocit soukromí a klidu. Pro diváky je připravena celá tribuna, ze které je dobře vidět skoro na celé programátorské kolbiště. Poznávacími znaky týmů jsou mimo barvy triček a názvu univerzity na zádech také popsané stěny týmových buněk celým jménem univerzity. Po stranách visí ke stropu připravené héliové balónky odpovídající soutěžním problémům pro označení stolů, které správně problém vyřešily.
Na stole leží elektronika od Lenova, konkrétně LCD Lenovo ThinkVision L2321x, klávesnice Lenovo 41A5100 a myška také od Lenova. Celý programovací proces bude postaven z hardwarového hlediska na notebooku Lenovo Thinkpad W530 s procesorem Intel i7-3720QM (3,6 GHz), kterému asistuje 16 GB RAM. Matematickým operacím pomáhá kalkulačka a na férový průběh soutěže dohlíží webkamera umístěná na monitoru každého počítače. Soutěžící si mohli předem připravit 25 stránek veliký referenční dokument, který měli možnost během finále použít jako referenční materiál ve třech papírových verzích. Většinou prý obsahuje složitější algoritmy, jejichž vymýšlením by tým ztratil drahocenný čas, a například ručně psané poznámky.
Softwarové vybavení zahrnovalo operační systém Ubuntu 12.04.1 s rozhraním GNOME, soutěžící měli na výběr z několika textových editorů a použitelné jazyky v prostředí Eclipse 4.2.1 byly jednak Java 1.7.0_09 a C/C++ CDT 8.1.1, pro řešení soutěžních problémů naprosto standardní a dostačující. Týmy měly seznam hardwaru a softwaru k dispozici předem, takže soutěžící mohli trénovat v identickém prostředí, jako na místě v hale. Pro pozitivního ducha, možná i z motivačních důvodů a hlavně pro štěstí měly některé týmy na stole dokonce maskota své univerzity. Vedle každého stolu byly připraveny černé pytle s drobným občerstvením pro zaměstnané mozky.
Před samotnou soutěží se konalo krátké setkání všech soutěžících v menším sále, kde energický Dr. Bill Poucher střídavě učil soutěžící Rusky a opakoval základní pravidla chování během finále. Nakonec se všichni seřadili před vstupem do soutěžního prostoru a pomalu se nasoukali dovnitř. V některých byla cítit nervozita, v jiných odhodlání a motivace (Rusové) a v některých pozitivní duch doprovázený ústy od ucha k uchu (Asiaté). Všem však bylo jasné, že je to jejich životní příležitost ukázat světu své nevšední schopnosti. Došlo i na známky fair-play, když si Rusové přáli navzájem hodně štěstí.