Eesmärk
Programmeerimisvõistluste aine eesmärk on valmistada tudengeid ette programmeerimisvõistlustel osalemiseks. Ülikool osaleb kahel võistlusel:
- ICPC. Koosneb kolmest staadiumist: NCPC (Põhja-Euroopa veerandfinaal), NWERC (Loode-Euroopa poolfinaal) ja WF (ülemaailmne finaal). Nendest esimesed kaks on sügisel. Võistlused on kolmeliikmelise meeskonnaga, 5 tundi pikad ja sisaldavad ca 12 ülesannet.
- IEEEXtreme. 24-tunnine maraton, samuti kolmeliikmelise meeskonnaga.
Võistlustel osalemine ei ole otseselt aine läbimisega seotud, aga on muidugi soovituslik. Kursusel omandatu tuleb kindlasti kasuks ka omal käel võistlusel osaledes.
Sisu
Aine koosneb:
- kaheksast loeng-praktikumist (2h), kus tutvume võistlustel levinumate võtete, algoritmide ja nende jaoks vajaliku teooriaga ning lahendame ülesandeid.
- neljast meeskondlikust harjutusvõistlusest (5h), mille eesmärk on anda osalejatele praktiline võistluskogemus, sh. ülesannete kiiresti lahendamise oskus, ajaplaneerimise oskus ja meeskonnatöö kogemus.
Praktikumid toimuvad ÕISis märgitud ajal. Võistluste aja lepime kokku kursuse algusnädalatel, võimalik, et nädalavahetusel. Praktikumid toimuvad peamiselt T. Tennisbergi ja K. Gabreli raamatu Võistlusprogrammeerimine alusel (veebist tasuta kättesaadav, vt. materjalide jaotist), aga kohati järgime muid materjale.
Kõik võistlused ja praktikumid viime läbi (ülesannete esitamise mõttes) Codeforcesi grupis. Palun kõikidel kursusel osalejatel grupiga liituda (pange enda nimi profiili või andke enda kasutajanimest mulle mingil moel teada).
Nõuded
Kursuse läbimiseks tuleb osaleda vähemalt kolmel võistlusel neljast ning vähemalt kuus praktikumi kaheksast arvestatud saada. Praktikumide arvestatud saamine käib järgnevalt: iga praktikumi alguses annan teada mingid ülesanded sellest praktikumist, mis tuleb kahe nädala jooksul ära teha.
Ajakava
Praktikumid kestavad 2h, harjutusvõistlused kestavad 5h. Lisaks tuleks arvestada, et peale harjutusvõistlust on ülesannete analüüs, mis võib kesta ~1h. Harjutusvõistluste aja paneme paika peagi
Võistlused on meeskondlikud. Võistluste meeskonnad on üldiselt 3-liikmelised.
Antud ajakava on orienteeruv. Kaldkirjas olevad võistlused ei ole kursuse osa, aga on välja toodud konteksti mõttes.
Nädal | Praktikumid | Võistlused |
---|---|---|
05.09-11.09 | 08.09 Aine tutvustus | - |
12.09-18.09 | 13.09 DP I | - |
19.09-25.09 | 20.09 Graafid I | - |
26.09-02.10 | - | 02.10 Harjutusvõistlus |
03.10-09.10 | 04.10 Kahendotsing | 08.10 NCPC |
10.10-16.10 | 11.10 DP II | - |
17.10-23.10 | - | 22.10 IEEEXtreme |
24.10-30.10 | 25.10 Graafid II | - |
31.10-06.11 | - | 06.11 Harjutusvõistlus |
07.11-13.11 | 08.11 DP III | - |
14.11-20.11 | - | 20.11 Harjutusvõistlus |
21.11-27.11 | - | 25.-27.11 NWERC |
28.11-04.12 | 29.11 Stringid | - |
05.12-11.12 | 06.12 Andmestruktuurid | - |
12.12-18.12 | - | 18.12 Harjutusvõistlus |
19.12-25.12 | - | - |