
De CodeCup is een jaarlijkse programmeerwedstrijd, ontstaan uit de Nederlandse Informatica Olympiade, waarbij deelnemers een programma schrijven dat een spel kan spelen. Die programma's nemen het dan tegen elkaar op in een toernooi.
Het spel van dit jaar heet BOX, een abstract bordspel waarbij spelers een geheime kleur toegewezen krijgen, om vervolgens kaarten van 6x2 op een rechthoekig bord leggen, met het doel om vierkanten van hun eigen (geheime) kleur te maken. Hier een screenshot van de website:

Hier zie je dat elke kaart zes verschillende kleuren in een willekeurige volgorde bevat (waarbij de tweede rij dezelfde kleuren maar in omgekeerde volgorde bevat). In dit voorbeeld scoort geel 6 punten door een vierkant van 7x7 te maken (de score is altijd 1 minder dan de grootte van het vierkant—vraag me niet waarom).
Interessant aan dit spel is dat strategie gecombineerd wordt met verborgen informatie (de geheime kleuren van de spelers) en willekeurigheid (de kaarten die de spelers op het bord plaatsen). Daardoor is er geen voor de hand liggend optimaal algoritme, maar zijn er verschillende technieken denkbaar die tot een goede strategie leiden.
Lees de regels van het spel hier (in het Engels):

Of kijk dit filmpje (drie minuten; de eerste minuut waarin de kaarten verdeeld worden kun je eventueel overslaan, want dat doet de software automatisch):
De CodeCup variant wordt altijd gespeeld tussen twee spelers, maar beperkt zich tot een bord van 16x20 velden, en gaat door tot er geen zetten meer mogelijk zijn. Verder is het principe hetzelfde: je scoret punten door vierkanten te maken van je eigen kleur.
Voorbeeld van het spelverloop. Voor details, lees de volledige regels op de CodeCup site.
Technische details
Om mee te doen moet je een speler schrijven in één van de ondersteunde programmeertalen: C, C#, C++, Go, Haskell, Java, JavaScript, OCaml, Pascal, Python, Rust.Je programma mag per potje maximaal 30 seconde CPU-tijd gebruiken op een 2 GHz CPU (geen multithreading), en maximaal 2 GB geheugen. Zie verder de technische details op de CodeCup site.
Lokaal testen
Voordat je je programma instuurt, kun je lokaal testen dat je aan het spelprotocol voldoet. Daarvoor stelt de organisatie een tool genaamd Caia ter beschikking. Ook zitten er drie testspelers in de Caia distributie. Die zijn heel handig om je speler te verbeteren.Belangrijke data
De finale is op zaterdag 18 januari 2025. Dat is nog ver weg. Tot die tijd is er elke drie weken een testcompetitie, waarvan de eerste op zaterdag 14 september 2024 plaatsvindt.De testcompetities zijn nuttig om te verifiëren dat je programma correct werkt in het CodeCup systeem, en om uit te vinden hoe sterk je speler is vergeleken met die van andere deelnemers.
[ Voor 0% gewijzigd door Soultaker op 25-09-2024 19:28 . Reden: C# toegevoegd als mogelijke programmeertaal ]