Hur tävlar man i programmering?

Programmeringstävlingar handlar huvudsakligen om att man får en samling uppgifter utdelade vid tävlingsstart, och sedan gäller det att snabbt programmera och skicka in så många korrekta lösningar man kan. Desto mer korrekta och snabba dina program är, ju fler poäng samlar du. Flest poäng vid tävlingens slut vinner. Nyfiken? Läs vidare, så förklarar vi.

Hur går tävlingen till?

Vid tävlingen start delas en samling problem ut till de tävlande. Alla som tävlar i samma tävling får samma samling uppgifter, vid samma tidpunkt. Sedan gäller det att läsa och förstå problemen, och fundera på hur man ska lösa uppgifterna.

En exempeluppgift

Anna driver en bilskrot. På bilskroten har hon ställt upp N stycken bilar. En dag kommer Anna till bilskroten och upptäcker att alla bildäck är försvunna från bilarna. Som tur är så känner dock Anna bildäcksfanatikern Simon, som hon genast ringer upp för att fråga om han har några extra bildäck. Det visar sig att Simon har M stycken bildäck i sitt reservlager som han är villig att hjälpa Anna med. Skriv ett program som läser in variablerna N och M och sedan räknar ut hur många kompletta bilar Anna kan få med Simons hjälp (varje bil behöver exakt 4 däck för att vara komplett).

Indatagränser: 0 ≤ N, M ≤ 100.

För det här problemet så räcker det att gå igenom Annas bilar och, för varje bil, plocka fyra däck från Simons reservdäck åt gången, och stanna när man inte kan plocka fler däck eller bilarna tagit slut. Sedan skriver man ut hur många bilar man hann med att fixa till. Kan du komma på en annan lösning som löser problemet fortare?

Hur programmerar jag en lösning?

På din egen dator, som du vill. Du testar även din lösning på din egen dator, för att övertyga dig själv om att programmet fungerar som det ska. Du ska övertyga dig själv om att ditt program kommer att klara den hemliga testdatan som vi kommer testa ditt program på. Det är ett måste att ditt programspråk stöds av vårt automatiska domarsystem. En lista på vilka språk som stöds för närvarande kan du hitta här.

Hur gör jag när jag programmerat en lösning?

När du har kommit på en lösning och programmerat den så skickar du in den till vårt domarsystem, som kommer att testa ditt program på en massa hemlig testdata. När rättningen är klar så får du ett svar med hur många poäng din lösning fick.

Hur rättas min inskickning?

Din inskickning kommer att testas mot en stor mängd hemlig testdata. För varje testfall som du klarar så får du en viss mängd poäng, varierande med problemet. För varje testfall så kollar vi ifall du svarar rätt, och om du svarade innan tidsgränsen för problemet passerat. Är din lösning för långsam på ett visst testfall så får du inga poäng på testfallet.

Jag vill prova, var börjar jag?

På vår tävlingsportal Kattis har vi massor av gamla problem som du kan öva dig på. Ansök om konto här.