HTML

kdanoblog

Friss topikok

Linkblog

Naptár

április 2024
Hét Ked Sze Csü Pén Szo Vas
<<  < Archív
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

disclaimer

Az oldal tartalma minden bizonnyal fikció. (Elvégre ki akarna matematikus lenni...)

CEOI 2012 – 2.

A kulisszák mögött

2012.07.30. 11:35 kdano

A beszámoló második része. Előzmények itt.

A verseny

A résztvevők számára a CEOI július 7-én, szombaton kezdődött, de mi már egy nappal korábban, péntek délelőtt leutaztunk, és a napot az iskolában töltöttük. Az 52 diákot négy terembe osztották be, ebből kettőnél kicsit problémás volt az elrendezés, mert olyan közel kellett volna ülniük egymáshoz, mint egy informatikaórán. Állítólag ezt az elrendezést valaki korábban már jóváhagyta, de muszáj volt módosítani rajta: nem is csak azért, mert egy versenyen mégiscsak jó lenne, ha nem látnák, hogy mit csinál a szomszédjuk, hanem azért is, mert nem volt hely papírra írni, firkálni, számolgatni. Végül néhány gép átkerült új asztalokra, így a gépsűrűséget sikerült kétharmadára csökkenteni. Jó meleg is volt, főleg az első napokban még teljesen nem csengett le a korábbi hetek kánikulája, ezt néhány mobilklíma volt hivatott ellensúlyozni, több-kevesebb sikerrel.

Aznap még kíváncsiságból megnéztem a guide-ok eligazítását is, de utána nekiláttam végre a kiértékelőrendszeren tesztelni az első napi feladatokra írt programjaimat, valamint legjobb tudásom szerint átfogalmazni, angolosítani azok leírását. A legtöbb feladatot egyébként alaposan átírtam, a végleges verziókat pedig a versenynapokat megelőző esti megbeszélésen, a csapatvezetők javaslatai, megjegyzései alapján alakítottuk ki. Az első versenynapi feladatokat így lényegében három napig teszteltem, kétszer olyan gyorsra optimalizáltam a hivatalos megoldásomat a race-re, kijavítottam egy hibát a circuitra írt megoldásomban, illetve a teszteket, időlimiteket olyanra állítgattattam, hogy a mindenféle példaprogramom az elképzelésemnek megfelelő pontszámot érjen. Már kicsit összefolyik, hogy mit csináltam a nulladik, az első illetve a második napon az első versenynappal kapcsolatban, de az biztos, hogy a jobs feladat értékelését utolsó éjszaka módosíttattam, hogy ne 100, csak 50 pontot érjen a naiv megoldás.

Visszatérve a nulladik napra, már ott látszott, hogy – ahogy az olimpiákon illik, – elég jól gondunkat fogják viselni. A csapatvezetői szálláson például a vacsora svédasztalos volt, csakúgy, ahogy a későbbiekben a legtöbb étkezés. Arról persze már nem az olimpia operatív szervezői tehettek, hogy a vacsora vége felé egyszer csak zenélni kezdett a Neoton a hotel medencéje fölött emelt színpadon. Viszont ez megmagyarázta, hogy miért kellett VIP feliratú karszalagot fölvennünk a vacsorához.

Az első nap a megérkezésről szólt, amit én még mindig teszteléssel töltöttem. Szerencsésebbek, mint pl. Győző és Laci a hotel szaunáit és medencéit tesztelhették, de nekem erre csak az utolsó előtti nap lett lehetőségem. A második napon volt a próbaforduló, amin volt egy-két hiba: Az egyik feladatnak valószínűleg rossz volt a tesztesetek 90%-a, sőt az időlimit is túl kicsi volt, míg a másiknak kicsit ellentmondásos volt a szövege. Ez elég kellemetlen, de nem olyan meglepő, ugyanis azokat a feladatokat praktikusan senki nem tesztelte (én sem, bár én egy nappal korábban láttam őket először).

Meglepő módon a megnyitó csak a practice session után kezdődött, de nem ez volt az egyetlen meglepetés. Eleve borzalmasan meleg volt, ami érthető, ha harmincsok fokban egy vidéki gimnázium nagytermében üldögél az ember. Következő meglepetésként jött Gloviczki Zoltán, és angolul elmagyarázta, hogy a protokollnak megfelelően magyarul fog beszédet mondani. Ez elsőre orbitális kamunak hangzott, de aztán kiderült, hogy bűn is volt. Na nem mintha olyan remek beszéd lett volna, sőt nem emlékszem, hogy valaha hallottam volna ennyire rossz beszédet. A beszéd kétharmada Olümpiáról, Delphoiról és Epidauroszról szólt, egy-egy random állítás, persze megszakítva az angol fordítással, majd végül arra a konklúzióra jutott, hogy ezek egy-egy dologban voltak kiemelkedők, de más területeken is jók voltak. És a csattanó: lám, a londoni olimpián, a fizikai teljesítmény versenyén kell gondolkozni, és itt, a szellemi olimpián is fizikai terhelést kell elviselni (utalva a nagy melegre). Szóval ez volt tíz perc hosszan nyújtva, de az angol „tolmácsolásnak” még kevesebb értelme lett. Már a beszéd eleji állitások is kaotikusak voltak, de a csattanó konkrétan elveszett (szerintem le se esett szegénynek, annyira izgult). A tolmács egyébként egy angoltanár volt, akinél szerintem még én is jobban beszélem a nyelvet. Tény, hogy igazán megkaphatta volna a beszédet előre, meg érthető, hogy izgult, de akkor is fura, hogy ilyenek oktatják az angolt egy gimnáziumban. Angoltudásilag egyébként is kicsit problémás volt a keret. Persze a guide-ok úgy lettek összeválogatva, hogy kommunikáljanak a nyelven, de a szervezők közt meglepően keveseknek nem okozott gondot egy mondat angolul. Még meglepőbb volt, amikor pár nappal később egy ebédnél az igazgató jelentette be – magyarul, tolmács segítségével –, hogy az esős idő miatt elmaradnak a sportprogramok. De ez legalább egy másik angol tanár volt, aki tudott angolul, még ha nagyjából egy szótag volt is, amit megközelítőleg hiteles angol kiejtéssel használt.

Kicsit elkalandoztam, de azt még hozzátenném, hogy Gloviczki beszédének végén már nem bírtam röhögés nélkül. Kicsit kevésbé extrémen, de hasonlóan abszurd volt a tatai polgármester beszéde is, aki körülbelül tízszer üdvözölte a diákokat „Tata, a *** városában”, ahol a *** persze mindig változott, volt az víz, zöld, olimpiai edzőtábor, de random emberek is, akiknek egy részéről én sem hallottam, kérdés, hogy van-e értelme egymondatost felsorolást tartani Övegesről, a nagyszerű tanárról, meg még öt, külföldiek számára hasonlóan ismeretlen emberről, ahelyett, hogy mondjuk egyikükről, vagy valami egyéb érdekesről mesélne öt mondat erejéig (aminek van esélye, hogy megmarad). Itt az angol fordítás abszurditását az adta, hogy a víz- és zöldfelület nagyságát négyzetméterről acre-re fordították, ami nem tudom, hogy kinek az ötlete volt (valószínűleg a második – angolul tudó – tanárnak, aki egyébként ezt a beszédet megkapta előre), mindenesetre valószínűleg félreértett valamit az angol, mint közös nyelv céljáról a versenyen. Nem tudom, hogy a közép-európai országok közül melyik az, amelyik használja (vagy akár megérti) ezt a mértékegységet.. Egy német diák azt állította, hogy ők használják, de ő a hektár definícióját tudta, szóval ez nem ér. Még azt is megjegyezném, hogy a négyzetméter a szabvány, és az angolok meg is értik.

Aztán a megnyitó ünnepség véget ért, majd pár órával később este lett, és a csapatvezetők megkapták a feladatokat. Tettek némi javaslatot, lefordították saját nyelvükre, de azt a fent említett utolsó módosítást leszámítva már nem volt sok izgalom. Volt helyette ingyensör (meg ingyenfanta) és pogácsa.

Az első versenynap remekül sikerült – azt az egy szépséghibát leszámítva, hogy a magyar versenyzők egészen pocsékul teljesítettek (az első napi eredmények alapján összesen egy ezüst és egy bronz járt volna a nyolc főnek). A maximális 300-ból 270 pontja lett a két legjobbnak, majd lényegében egyenletesen elosztva (120 körül volt a medián) még az utolsó is gyűjtött tizennéhány pontot. Probléma nem volt, leszámítva azt, amit én két nappal korábban is megjegyeztem, de úgy tűnik, nem volt orvosolható a javában megírt kiértékelőrendszeren: a program beküldése után a böngésző nem kapta vissza a következő oldalt amíg a rendszer ki nem értékelte a programot. Namost az egyik feladatnál 3 másodperc volt a limit, 20 tesztesetre, úgyhogy kicsit belassultak a dolgok. De ezen kellemetlenség mellett tényleg semmi problémánk nem akadt.

Kezdhettem tesztelni a második versenynapot, nomeg persze nekiláttam a feladatok átírásának is. Első körben megnéztem a highway tesztelőjét (ez egy interaktív feladat volt, azaz a szerverrel kommunikáló programot kellett írni, na én itt a szerver programját nézegettem, pontosabban a pascalos változatot), találtam is benne egy-két hibát, azokat javítottuk. Aztán megírtam a programomat a networkre is, ott is találtunk egy hibás tesztesetet. A wagonra írt programom pedig borzasztó bonyolult, ráadásul bugos volt, úgyhogy azt ngg programjával teszteltem, illetve állítottuk hozzá az időlimitet. Úgy tűnt, hogy rendben leszünk, igazából a highwaynek akartam még okosítani a tesztelőjén, mert kicsit buta volt, de végül túl komplikált lett, meg idő sem maradt, úgyhogy maradt minden a régiben.

Aztán a második napon jött a katasztrófa: a highway feladattal négy markáns probléma adódott. Először az tűnt fel nekem, hogy sorra jönnek a 60 pontos megoldások a top versenyzőktől. Először még csak 3-4-en, később több mint tízen küldtek be olyat. Jobbat csak egy ember produkált, és őróla is tudtam, hogy pascalt használ, úgyhogy nekiláttam nézegetni a c++ tesztelőprogram kódját, de csak nem találtam a hibát. Közben az is kiderült, hogy minden 60 pontosnak ugyanazok a tesztesetek rosszak, mégpedig amikor a bemenet páratlan. Még MBalázs programját is megnéztem, és fejben lejátszva a tesztelővel való kommunikációját megállapítottam, hogy annak jónak kéne lennie. Három órán keresztül nem találtam, és akkor már annyira elegem lett, hogy lecipeltem Lacihoz a fájlokat, és az ő c++ compilerével kezdtem debuggolni a dolgot (én nem értek a c-hez, úgyhogy olyanom nincs is a gépemen). Még a lengyel csapatvezetőket is bevontam a dologba, de aztán sikerült megtalálnom a banális hibát: egy-egy karakterrel el volt írva három változó. Ráadásul ezt a hibát korábban (véletlenül) megtaláltam a pascal kódban, csak gondolom valahogy kimaradt az átmásolásnál.

De nem ez volt az egyetlen probléma, bár minden bizonnyal a legsúlyosabb. Egy kisbetű-nagybetű eltérés is a mi lelkünkön szárad, valamint az, hogy a versenyzőknek kiadott próbatesztelő nem úgy működött, ahogy a feladatban le volt írva. Ezek mind olyan hibák, amik egyből kijöttek volna, ha valaki teszteli a feladatot c-ben is, illetve az utolsó hibát én is észrevettem volna, ha megnézem a példatesztelőt. (Egy másik hibát is vétettem, mert nem hirdettem ki a termekben, hogy ez van, hanem egyesével magyaráztam azoknak, akik belefutottak a problémába.) A negyedik hibánk a feladatnál kevésbé könnyen észrevehető volt, a verseny alatt ki sem derült: a kiértékelő feltöltési hibaként jelzett egy típushibát, ami valójában futási hiba volt. Ezek mellett kis kellemetlenség, hogy a wagonra maxpontot lehetett elérni helytelen algoritmussal is.

Összességében a hatból öt feladat rendben volt, de a hatodik eléggé tönkretette a második versenynapot. Egy – egyébként meglehetősen hisztis – srác például egészen kikészült (egy kicsit önhibájából is). Megpróbáltam tőle bocsánatot kérni, de elküldött a fenébe. Én úgy látom, hogy a hibák legfőbb oka az volt, hogy csak ketten voltunk. Ez már eleve kevésnek tűnt, és tényleg: HGyula rengeteget dolgozott (praktikusan három héten keresztül reggeltől estig a feladatokkal foglalkozott), és én sem unatkoztam. Ha mégvalaki tesztelte volna c-ben a feladatokat, már sokkal jobb helyzetben lettünk volna.

A kis bakinkat szerencsére nem sikerült eltussolni. El nem tudtam képzelni, hogy vajon mi lesz így az eredménnyel, de meglepően működőképes javaslatott tett Wolfgang: lényegében kiosztottuk az érmeket az összeredmény és csak az első nap alapján is, és mindenki a kettő közül a jobbat kapta. Így az összeredményhez képest kettővel több ezüst és kettővel több bronz lett, ami egészen korrektnek mondható.

A továbbiakban még volt egy megbeszélés, amin kiderült, hogy Svájc garantáltan nem lesz rendes tag, míg Szlovénia két év haladékot kér. Illetve a jövő évi olimpiát szervező Horvátok nem nagyon tudnak pénzt szerezni, ezért tíz-tizennégy napos táborban gondolkodnak, aminek eleje felkészítés, vége verseny. A záróünnepélyen aztán semmi említésre méltó nem történt, a beszédek sem voltak olyan viccesek, mint az elején. Előtte fürödtem, utána meg volt lehetőség kiélni az infantilizmust a trambulinon, a csúszdán és a hintán.

Szólj hozzá!

Címkék: programozás ceoi

A bejegyzés trackback címe:

https://kdano.blog.hu/api/trackback/id/tr204686345

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása