Augusztus 8. és szeptember 4. között zajlott le a 35. Nemzetközi Informatikai Diákolimpia, aminek már másodszor adott otthont Magyarország – Veszprém helyett ezúttal Szegeden bizonyíthatták a programozói tudásukat a diákok, miközben megismerkedhettek kicsit hazánk kultúrájával és nevezetességeivel. A verseny végeztével Kína, Japán és az Egyesült Államok tudhatta magáénak a legtöbb aranyérmet (mindegyik ország négy díjjal térhetett haza), de szerencsére mi is joggal lehettünk büszkék. Tarján Bernát, a Békásmegyeri Veres Péter Gimnázium diákja érte el a legjobb eredményt, aki pontszámai alapján ezüstérmet szerzett, Németh Marcell, Németh Márton Tamás, Fülöp Máté, Máté Lőrinc és Molnár István Ádám pedig bronzéremmel távozott. 2024-ben Egyiptom, 2025-ben pedig Bolívia ad majd otthont a rendezvénynek. De mi is pontosan ez?
A Nemzetközi Informatikai Olimpia (avagy International Olympiad in Informatics) egy évente megrendezésre kerülő programozási verseny, amely a középiskolások számára szervezett nemzetközi tudományos olimpiák egyike. Az első IOI-t 1989-ben rendezték meg a bulgáriai Pravetzben, és a Nemzetközi Matematikai Olimpia után ez a második legnagyobb tudományos olimpia a résztvevő országok számát tekintve (a 2022-es versenyen 88-an vettek részt, idén ez a szám már 90 volt). Minden ország legfeljebb négy diákból álló csapatot küld, valamint egy csapatvezetőt, egy helyettes vezetőt és vendégeket. Fontos megjegyezni, hogy a versenyzők életkora nem érheti el a 20 évet, és nem vehetnek részt középfokúnál magasabb iskolai képzésben. Az egyes országok diákjai a nemzeti számítástechnikai versenyek során kerülnek kiválasztásra, akik aztán egyéni alapon versenyeznek, nincs hivatalos csapatranglista. Az olimpia fontosságát jól jelzi, hogy még az UNESCO és az IFIP (Nemzetközi Információfeldolgozási Szövetség) is támogatja.
Maga a verseny két napig tart (legutóbb ugyan 8 napot voltak hazánkban a kiválasztottak, de ebből hatot a környék, többek között Makó és Ópusztaszer megismerésével töltöttek) és leginkább programozásból, kódolásból, valamint algoritmikus jellegű problémamegoldásból áll. A versenynapok során a fiatal tehetségeknek három-három feladatot kell abszolválniuk, amelyre öt óra áll a rendelkezésükre. A kihívás során mindenki egyedül dolgozik, bárminemű külső segítség (könyvek, internet, más résztvevők) nélkül, és csupán egyetlen számítógépet (ez most egy Acer Aspire 3 volt, Ubuntu 22.04 LTS operáció rendszerrel) használhatnak, hogy életre keltsenek egy kiváló problémamegoldó készséggel felvértezett, C++ nyelven íródott programot. A végeredményt úgy értékelik, hogy titkos tesztadatokkal futtatják le, 2010-től kezdve pedig már fokozatos nehézségű részletekben adagolják a feladatokat, és csak akkor adnak pontot (minden feladat 100-at ér, így összesen 600-at lehet begyűjteni), ha egy adott részfeladat összes tesztje helyes eredményt ad, méghozzá meghatározott idő- és memóriakorlátokon belül.
A rengeteg résztvevő (minden országból legfeljebb négyen indulhatnak) miatt természetesen nem lenne fair csupán néhány eredményes diákot jutalmazni, így a többség bizony éremmel térhet haza a megmérettetésről. A gyakorlatban ez úgy néz ki, hogy aranyérmet kap a versenyzők legtöbb pontot kapott 1/12-e, ezüstérmet a következő 2/12-ük, bronzérmet pedig a résztvevők soron következő 3/12 része. Aki nem nyer érmet, az dicséretet kap, amennyiben legalább egy problémát sikerült maradéktalanul megoldania. Az eddigi legeredményesebb versenyző egyébként a fehérorosz Gennady Korotkevich volt, aki 11 éves korában indult először, és már akkor is ezüstéremmel a nyakában léphetett ki az ajtón – persze programozó felmenőkkel előnyből indult, nemde? Korotkevich időközben már hat aranyérmet is szerzett, emellett pedig más versenyeken is kiemelkedően teljesít, szóval egy valódi sikertörténet az övé, aminek messze még a vége.