COVID-19 hallgatói információ: a személyes ügyintézés helyett amennyiben lehet, akkor online formában (pl. e-mail) keresse az oktatót.

Arrow up
Arrow down

   (+36) 88 424 483

   8200 Veszprém, Egyetem utca 10. I. épület 9. emelet

  

Hírek

Idén is megrendezésre került a Tata Consultancy Services (TCS) versenye, a "Code Vita". Tavaly ugyanennek a versenynek a döntőjére sikeresen bejutottam, amit az indiai Bangalore-ban szerveztek. Mivel kellemes élmény volt, és továbbra is PhD hallgató voltam, gondoltam, belevágok ismét.

2018. szeptember és december között több, internetes forduló is zajlott, részben a gyakorlás végett, részben azért, mert több különböző régióban is volt válogatás. Végül, december elején került sor az utolsó válogatóra, amely nem sikerült túr rózsásan. Mindössze két feladatot oldottam meg az elérhető nyolcból. Azonban a forduló szokatlanul nehéz volt, így ez is elég volt a továbbjutáshoz a döntőbe. Ezúttal 25 döntőst hirdettek ki világszerte, ami valamivel kevesebb volt, mint tavalyi 40.

Idén Mumbai volt a helyszín, és február 24-27. közé esett. Ez mindkét végén plusz egy napot jelent az utazás miatt. A szervezők biztosítottak mindent, a repüléstől kezdve a Powai-tó partja melletti szállodán át a megszervezett közösségi programokig. Indiában négy és fél órával van korábban, mint nálunk, ezért az első nap a pihenésé volt. A nap folyamán szépen lassan érkezgettek az emberek, este pedig felvettek egy rövid videót mindenkivel. (Az idei versenyt is a tavalyi videókkal hirdették, amelyek közt én is ott vagyok.) Voltak tavalyról ismerős versenyzők is. Olyan is, aki már harmadszor volt a döntőben. Összességében én voltam az egyetlen magyar. Volt még három cseh kolléga, egyikük Cambridgeből ugrott le versenyezni, de mind ismerték egymást. Voltak peruiak, kínaiak, indiaiak, és egy-két hong kongi és taiwani programozó is. Általában elmondható, hogy ahol ismerik az évről-évre megrendezett CodeVita versenyt és terjesztik a hírét, onnan akad egy pár fős csapat, az egy helyről jövők is többnyire ismerték egymást.

A második naptól beindultak a programok. Először is, busszal meglátogattok a TCS Olympus épületét, amelyben mellett verseny volt, itt ellenőriztük a technikai feltételeket a másnapi versenyre. Én vittem saját billentyűzetet is, a nemzetközileg használt kiosztásra a magyarról átszokni kissé kellemetlen lett volna. Délután látogatást tettünk a Tata saját kis bemutatótermébe. Itt szembesültünk azzal, hogy ez az abszolút értelemben is milyen hatalmas, és India iparosodásában jelentős történelmi szerepe volt, és ennek a része a TCS. A TCS-nek több központja és irodaháza is van Mumbai-ban, még egyet meglátogattunk. Ennek része volt egy kis gyaloglás is az utcán. A közlekedés kautikus az európaihoz képest, bár nem annyira, mint Bangalore-ban, sokkal jobban kell figyelni az emberekre, mint amúgy a szabályokra. Végül, a kikötőben is tettünk egy sétát, és volt egy kis hajókázás is este. Láttuk a "Gateway of India" épületét és mellete az ikonikus Taj Mahal Hotelt. Remek programokat hoztak össze a szervezők, akik részt is vettek az idegenvezetésben, egész késő estig tartott a kirándulás.

Harmadnap volt a verseny, aminek az egésze a döntővel ment el a TCS Olympus központjában. A verseny formátuma ugyanaz volt, mint korábban. Tetszőleges programozási nyelven kellett algoritmikus jellegű feladatokat megoldani hat óra alatt, minél többet. Volt egy 30 pontos, több 100 pontos, és két darab 200 pontos feladat, összesen tíz, amiből lehetett választani. Én C++-ban programoztam, mint eddig minden hasonló versenyen. A szervezők előzetes kérésre biztosították is az általam preferált Qt fejlesztő környezetet. Az értékelés automatizált: csak forrásfájlt kellet megadni, és azt egy szerver számunkra nem ismert, ám a specifikációnak megfelelő teszteseteken ellenőrzi, így minden megoldásnál azonnal tudhatjuk, hogy sikeres volt-e. Ha nem, akkor lehetett újra próbálkozni. Csak a tökéletes megoldás ér pontot, holtversenynél a megoldási idők, és a részpontok azért közrejátszhatnak. Feladat volt például, hogy sok szakasz közül számoljuk meg, hogy mennyi pontban metszik egymást, vagy, hogy egy gráfon mi a legrövidebb út, illetve hogyan kell egy parkolóban az autókat helyekre osztani, hogy maximális profitot érjünk el. Vagy, hogy egy bowling-verseny végeredmény fájljából találjuk ki a verseny hiányzó részleteit, illetve névrészletekből rakjunk össze neveket. A változatos feladatokban a közös, hogy viszonylag gyorsan megoldhatók, és semmilyen technológia-specifikus tudást nem igényelnek, csak a nettó programozási, algoritmizálási képességeket.

Negyedik nap volt az ünnepélyes eredményhirdetés, ahova a cégtől felsővezetőket is meghívtak. A díjátadót élőben közvetítették is, a másfél órás felvétel ma is megtekinthető a TCS Facebook oldalán (https://www.facebook.com/TataConsultancyServices/). Az első három helyezett kapott rendre három, hét és tízezer dolláros jutalmat, a többi helyezést később tudtuk meg. Én két feladatot oldottam meg, ezzel nem is voltam annyira elveszve: végül tizenötödik lettem a 25-ből, de a második megoldásom pillanatában második is voltam a tabellán - a versenyről tudni kell, hogy az előzetes eredmények, vagyis, hogy ki hány feladatot oldott meg, ki vannak vetítve és láthatóak. Innen lehet tudni, hogy mely feladatokat tudtak megoldani mások, ami hatalmas segítséget jelent. Csak hát később nem oldottam meg egyetlen feladatot sem - azaz négy másikkal próbálkoztam, de egyik sem lett tökéletes. Négy feladat volt, amit senki sem oldott meg. A győztesnek, aki egy cseh diák volt, ötöt sikerült, további öt embernek 3-4-et, és 2 volt az általános. A verseny jóval nehezebb volt, mint egy évvel korábban. Többen nem éreztük, hogy pontosan mit ronthattunk el a megoldásokban, mert szerintünk azok jók voltak - de hát a versenynek ez is a része. Az eredményhirdetés, és némi fotózkodás után egy ebéd következett, majd visszautazás a hotelbe, ahonnan egyenként minden csapatot kivittek a reptérre, kinek hogyan ment a gépe. Addig is, a többi versenyzővel Facebook accountokat, illetve akinek volt, CodeForce accountokat is cseréltünk, nomeg egymás nevének kimondását gyakorolgattuk a másik nyelvén, kibeszéltük a versenyt is. Az egyik kínai kollégától kaptam ajándékba egy disznóhúsos noodle-t.

Összességében nagyon hangulatos, és a nehézségek ellenére élvezhető verseny volt, bárkinek volt esélye szép eredményt elérni. Én mennék jövőre is, csak hát már nem vagyok hallgató - így is idősnek számítottam az ottani mezőnyben. De fiatalabbaknak csak ajánlani tudom a TCS Code Vita versenyt, szeptember és október között kell ránézni a honlapjukra, akkor szokták hirdetni a regisztrációt, és az első gyakorló fordulókat (https://www.tcscodevita.com/). Könnyű feladatok is mindig vannak, amiket megoldani nagyon jó élmény.