Įdomu tai, kad mūsų kaimynai Baltarusiai jau aštuonis metus iš eilės į namus parsiveža čempionų titulą. Vieną dieną, tai gal būt pavyks padaryti ir mums!
Tačiau dar labai dažnai lietuviai abejoja ar išvis verta dalyvauti tokiame turnyre. Galima išgirsti, kad tai per daug sudėtinga ir sunku, kad užduotis gali išspręsti tik tikri programavimo genijai ir t.t. Neslėpsime, tame yra tiesos, tačiau tai palikime konkurso antram, trečiam ir finaliniam etapams.
Kvalifikacijos etapą gali praeiti kiekvienas, kuris naudojasi savo loginėmis žiniomis. Nors lietuviai turnyre sutinkami vis dar retai, bet kiekvienais metais dalyvių skaičius iš Lietuvos auga. Todėl galime įrodyti Google’ui ir visam pasauliui, kad Lietuvoje – daug kompetentingų IT inžinierių!
Todėl tikime, kad vieną dieną ir mes pateksime į Google Code Jam turnyro finalą ir nesvarbu, kuriame mieste jis vyktų Los Andžele, Niujorke, Dubline, Toronte, San Franciske ar Miunchene.
Patarimai pasiruošimui
- Spręsti ankstesnes užduotis, pasidaryti šablonus skaitymui rašymui.
- Pasiruošti svarbiausius (daugiausiai pastangų reikalaujančius algoritmus), pažiūrėti grafų algoritmus (trumpiausio kelio, max-flow, jungumo ir topologinį rikiavimą).
- Gali prireikti didelių skaičių bibliotekos (jei niekas nepasikeitė – C# atveju nepavyks naudotis BigInteger), dažnai užtenka (u)long, kartais reikia modulinės aritmetikos.
Patarimai sprendimui
- Kodo grožis nėra labai svarbus.
- Pirmuosius testus dažniausiai galima išspręsti paprastai (brute force, greedy, specialūs atvejai…).
- Rekomenduojama peržiūrėti visus uždavinius; išimtis – jei perskaitytas uždavinys labai lengvas (dažniausiai pirmasis), tada geriau jį pirma spręsti (bent jau small test case). Beveik visada apie uždavinio sudėtingumą galima spręsti pagal tai, kiek žmonių jį išsprendė.
- Jei duoti pavyzdžiai yra labai paprasti – galima spėti, jog egzistuoja paprastas algoritmas.
Dar neužsiregistravai?
Padaryk, tai dabar ir turėk galimybę laimėti Google Code Jam marškinėlius, bei Google Code Jam Cheat Sheet!