Programmeerimise olümpiaad
Tutvustus
Kontakt: olympiaad ätt cs.ttu.ee
Tutvustav võistlus toimub septembri keskel. Täpsem info selgub jooksvalt.
Baltimaade võistlus, mille käigus selgitatakse välja võistkonnad, kes TTÜ-d esindavad, toimub septembri lõpus.
Registreerimiseks saada email olympiaad ätt cs.ttu.ee . Emailis kirjuta meeskonna liikmete nimed, õpilaskood (matrikkel + rühm + rühma kood).
Selgitame välja üks või kaks kuni kolmeliikmelist tiimi, kes läheksid ülikooli regionaalsele võistlusele esindama.
Piirkondlik voor toimub Minskis, Valgevenes oktoobri lõpus. TTÜ saab võistlusele saata kaks kuni kolmeliikmelist võistkonda. Võistkonnad selgitatakse välja septembri lõpus toimuva võistlusega.
Täpsem info
Reeglid:
- Võistlus toimub kuni kolmeliikmeliste võistkondadega. Võistkonna liikmed on sündinud 1991 või hiljem ja astunud ülikooli 2010 või hiljem.
- Igal võistkonnal on kasutada üks arvuti.
- 5 tunni jooksul tuleb ära lahendada maksimaalne hulk ülesandeid.
- Töö toimub klassi arvutitel, kasutada saab C, C++ ja Java keelt.
- Olümpiaadil võib kasutada trükitud materjale ja raamatuid, Interneti kasutamine ei ole lubatud.
- Võistkonna registreerimiseks saatke e-mail osalejate nimedega aadressil olympiaad ät cs.ttu.ee.
- Järjestuse määrab lahendatud ülesannete arv, võrdse arvu korral kulunud aeg.
- Võistlus toimub samal ajal samadele ülesannetega ka mitmes teises ülikoolis
- Järgmiste voorude info ja järgmiste voorude reeglid.
1-2 parimat võistkond saavad ülikoolilt toetuse osalemiseks ACM olümpiaadi veerandfinaalis.
Natuke olümpiaadi korraldusest:
Võistkonnale antakse kätte mingu hulk ülesanded. Ülesanded on inglise keeles. Ülesande koodi (source) ei kontrollita, kontrollitakse vaid tulemust. Iga programm lastakse läbi automaatse testimissüsteemi, mis kompileerib programmi, annab sellele ette mitmesuguseid reeglitekohaseid (aga võimalikult keerukaid) sisendeid ning väljastab vaid, kas tulemus oli õige või mitte. Kui programm andis mõne sisendi korral vale vastuse, siis selle kohta enam täpsemat infot ei anta. Kui programm annab 99-l juhul 100-st õige vastuse, kuid ühe vale, on tulemus 0. Vaid juhul, kui igal testil annab õige vastuse, saab ülesande eest punkte. Programmidele on lahenduseks seatud mälumahu ja ajapiirang. Iga ebaõnnestunud testimine annab karistusminuteid.
Iga ülesande kohta on toodud paar näidissisendit ja vastavad näidisväljundid. Oluline on ka sisendi ja väljundi formaat. Kui näiteks kahe erineva testi vahel peab jääma 2 tühja rida, siis jättes 1 tühja rea, loetakse vastus valeks.
Kõiki ülesandeid ei jõua lahendatud tavaliselt ükski meeskond. Alustage kõige lihtsamast, et esimesed punktid kiiremini kirja saada.
Ülikoolisisesed olümpiaadid toimuvad samal ajal samade ülesannetega ka teistes ülikoolides. Saate end jooksvalt nendega võrrelda.
Mõned veebilehed ja materjalid, kus saab tutvuda olümpiaadi-stiilis ülesannetega ning testimismootoriga:
- http://uva.onlinejudge.org/
- http://www.programming-challenges.com/
- Raamat Programming Challanges on saadaval ka TTÜ raamatukogus.
Kui te pole varem programmeerimisolümpiaadi ülesannete ja testimismootoritega kokku puutunud, siis on väga soovitav prooviks mõned ülesanded ära lahendada. Vaadake ka mitmesuguseid soovitusi kogenenumatelt. Kui olümpiaadil kasutatav testimootor varem ligipääsetavaks tehakse, siis ilmub selle kohta märge siia.