lørdag 28. september 2002 klokken 11-16
Hva er «NM i programmering»?
NM i programmering er en programmeringskonkurranse åpen for alle
studenter ved norske universitet og høyskoler.
Lag bestående av studenter (maks 3 pr lag; hvert lag har én datamaskin)
konkurrerer om å løse så mange programmeringsoppgaver
som mulig i løpet av 5 timer.
Påmelding
Påmelding skjer på en egen
påmeldingsside.
På en annen side finnes en
oversikt
over alle påmeldte. Påmeldingsfristen er
torsdag 26.9.
Premier og ære
Det vinnende laget vil kunne titulere seg «Norgesmestre i programmering
2002». (Ser bra ut på enhver CV!)
Dessuten vil Trolltech og
Microsoft
dekke utgiftene til de to beste lagene
i forbindelse med deltaking i den
nordvest-europeiske
finalen som arrangeres i Delft i Nederland som en del av
The
Annual ACM International Collegiate Programming Contest.
De vinnende lagene fra universitetene i Bergen og Oslo samt NTNU er
dessuten garantert å få dekket sine utgifter ved deltaking i den
nordvest-europeiske finalen. Det beste laget fra Høgskolen i
Sør-Trøndelag får også reise om de blir blant de ti beste i NM.
T-skjorter
Deltagere på de første lagene som melder seg på,
får en spesiell T-skjorte (gave fra Trolltech).
Bakgrunn
De siste 26 årene har «The Association
for Computing Machinery» (ACM) arrangert
The Annual ACM
International Collegiate Programming Contest som er en
konkurranse hvor lag av studenter konkurrerer mot hverandre om å løse
programmeringsoppgaver. Denne verdensomspennende konkurransen
arrangeres i flere
stadier:
- Først avholdes norgesmesterskapet samtidig på diverse høyskoler
eller universiteter i landet. (I 2001 deltok 3082 lag fra 1300
universiteter og høgskoler i
slike konkurranser i 67 land verden over.)
Nytt i år er at konkurransen kjøres samtidig og med de samme
oppgavene i Norge og
Sverige.
- De vinnende lag går videre til en
semifinale
hvor norske lag møter
andre lag fra Nordvest-Europa. (I 2001 var det 45 lag som
møttes i Darmstadt i Tyskland; fem var norske.)
- Det beste eller de to beste lagene fra semifinalene går videre til
verdensfinalen. I fjor vant Jiao Tong-universitetet i Shanghai i
Kina.
Tidligere mesterskap
I Norge har det vært arrangert mesterskap i programmering i
2000 og
2001.
Institutt for informatikk ved
Universitetet i Oslo har arrangert sitt
Ifi-mesterskap siden 1997; du kan finne oppgaver og løsningsforslag for
1997,
1998 og
1999.
(Ifis 8. plass i semifinalen i 1997
er den beste norske prestasjonen hittil.)
Institutt for informatikk ved
Universitetet i Bergen avholdt sitt
første mesterskap i
1999;
du kan studere oppgavene som ble brukt og hvorledes det gikk med laget
siden.
Hvem kan være med?
Hvert lag kan bestå av inntil tre studenter hvorav høyst én får være
cand.mag., ingeniør eller tilsvarende. Når det gjelder
sivilingeniørstudenter, kan
høyst én være 5-årsstudent. Ytterligere opplysninger finnes
i de
offisielle reglene.
Åpen klasse
Det er også mulig å melde på lag i såkalt «åpen klasse» hvor det ikke
stilles noen krav til hvor langt man er kommet i utdannelsen; her kan
alle være med. Men vinnerlaget får ikke kalle seg «norgesmester» og
kan ikke reise til semifinalen.
Konkurranseform
Konkurransen foregår slik at lagene får utdelt et sett med 6-8
oppgaver. De har også tilgang på én (og bare én!) datamaskin. Laget
skriver så et dataprogram i C, C++, Java eller
Pascal for hver oppgave.
Så fort et program er ferdig, sendes det til en dommer som kjører
programmet på et hemmelig datasett; hvis det da gir riktige svar og
ikke bruker mer enn maksimumstiden (typisk 3 minutter), er
det godkjent. Dersom programmet blir underkjent, kan man sende inn nye
løsningsforslag, men da får man 20 minutter tillegg i tiden.
Det laget som har løst flest oppgaver i løpet av 5 timer, vinner.
Dersom to lag har løst like mange oppgaver, vinner det laget som har
brukt kortest tid.
I løpet av konkurransen vil den fortløpende plasseringen
til lagene bli lagt ut på en Internett-side. Oppdateringen av denne siden
stopper når det gjenstår 1 time av konkurransen.
Er du god nok?
Nivået på problemene som blir gitt er slik at en student som har tatt
et par kurs i programmering og algoritmer, bør kunne løse de fleste oppgavene. En student
som bare har tatt ett programmeringskurs, bør kunne løse et par oppgaver. Typiske
teknikker som blir testet er
- søking (bredde først, dybde først, «brute force»),
- enkel kombinatorikk (dvs generere alle muligheter) og
- enkle geometriske beregninger (som å avgjøre om to linjer
krysser hverandre).
Hvis du stadig lurer på om du er god nok til å delta, kan du prøve deg
på et par oppgaver.
Trening
Studentene fra NTNU og HiST er invitert til å
delta i en treningssesjon lørdag 21. september klokken 11 - 16;
påmelding med e-post til:
petrovic@idi.ntnu.no.
NM 2002
NM i programmering blir arrangert ved
|
Høgskolen i Molde (kontaktperson
Ketil Danielsen og
Arne
Løkketangen) |
 |
Høgskolen i Sør-Trøndelag (kontaktperson
Else Lervik)
|
 |
Høgskolen i Østfold (kontaktpersoner
Jan Høiberg og
Gunnar Misund )
|
 |
Institutt for datateknikk og informasjonsvitenskap ved Norges
Teknisk Naturvitenskaplige Universitet (kontaktperson:
Pavel Petrovic).
|
 |
Institutt for informatikk ved Universitetet i Bergen
(kontaktperson:
Fredrik Manne) |
|
Institutt for informatikk ved Universitetet i Oslo
(kontaktperson:
Dag Langmyhr)
Platform: Unix (Solaris/Linux), Emacs, JDK 1.3.1, cc, gcc,
g++, Netscape (altså ingen Windows og ingen Pascal) |
|
Institutt for informatikk ved Universitetet i Tromsø
(kontaktperson:
Frode Fjeld) |
(og kanskje andre steder i Norge, men det er ennå ikke klart.)
Det er laget en vakker
plakat
til arrangementet.
Dersom det ikke arrangeres en lokal konkurranse ved din skole eller du
ikke kan reise til et av de nevnte konkurransestedene,
ta kontakt med en av de ansatte og vis dem denne siden. Tar de kontakt
med Fredrik Manne, vil
han være behjelpelig med alt som trengs for å sette opp en
lokal konkurranse (og det er ikke så mye som skal til...).
Sist oppdatert 29.09.2002 av
Dag Langmyhr.