Kilpaohjelmointi

582357
2-3
Ohjelmistojärjestelmät
Aineopinnot
Kurssi yhdistää käytännön algoritmien ohjelmointia ja ryhmässä toimimista. Kurssin opiskelijat muodostavat joukkueita, jotka ratkovat viikoittain algoritmisia ohjelmointitehtäviä. Kurssin päätteeksi halukkaat joukkueet voivat osallistua pohjoismaiseen NCPC-kilpailuun. Kurssia ei voi suorittaa erilliskokeella.
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2015 syksy 31.08-16.10. 1-1 Suomi Topi Talvitie

Luennot

Aika Huone Luennoija Päivämäärä
Ke 16-18 D122 Topi Talvitie 02.09.2015-02.09.2015

Yleistä

Kurssi muodostuu viidestä ohjelmointikilpailusta, joissa kolmen hengen joukkueet ratkovat algoritmisia ohjelmointitehtäviä. Kurssin päätteeksi on lisäksi mahdollista osallistua pohjoismaiseen NCPC-kilpailuun.

Kurssin aikataulu on seuraava:

  • ke 2.9. 1618: tietoa kurssista ja joukkueiden muodostus (D122)
  • ke 9.9. 1620: kurssikilpailu 1 (B221)
  • ke 16.9. 1620: kurssikilpailu 2 (B221)
  • ke 23.9. 1620: kurssikilpailu 3 (B221)
  • ke 30.9. 1620: kurssikilpailu 4 (B221)
  • ke 7.10. 16–20: kurssikilpailu 5 (B221)
  • la 10.10. 1217: NCPC-kilpailu, Kumpulan kampus

Kurssille osallistuminen vaatii hyvää ohjelmointitaitoa ja kiinnostusta algoritmien suunnitteluun. Jos olet pitänyt kursseista Tietorakenteet ja algoritmit ja Algoritmit ongelmanratkaisussa, niin tämä kurssi on sinua varten. Kurssi ei kuitenkaan vaadi mitään tiettyä kurssia esitiedoiksi.

Kurssista saa 2 op osallistumalla viiteen ohjelmointikilpailuun ja ylimääräisen 1 op saa osallistumalla NCPC-kilpailuun.

Tulethan myös kurssin IRC-kanavalle #kilo.

Kurssin suorittaminen

Kurssin suorittamiseen kuuluu osallistuminen ohjelmointikilpailuihin sekä valmistautuminen oman joukkueen kanssa. Kurssiin kuuluu viisi kilpailua, jotka järjestetään keskiviikkoisin aikavälillä 16–20. Jokainen kilpailu kestää 2,5 tuntia, minkä jälkeen tehtävät käsitellään yhteisesti.

Jokaisen kolmihenkisen joukkueen käytössä on yksi tietokone. Sallitut ohjelmointikielet ovat C++, Java, Python ja Haskell. Joukkueet saavat tuoda mukanaan mitä tahansa kirjallista materiaalia, esimerkiksi kirjoja ja omia muistiinpanoja. Elektroniset tallennusvälineet ja laitteet ovat kiellettyjä. Internetin käyttö on rajoitettu tehtävien palautukseen ja ohjelmointikielten manuaaleihin.

Kirjallisuus ja materiaali

Kurssikirjana on Kisakoodarin käsikirja (KKKK), jonka voit ladata tästä.