Het denkspel Bloemblaadjes rond de Roos wordt gespeeld met vijf dobbelstenen. Het wordt gespeeld door een computerprogramma of met echte dobbelstenen die worden geworpen door een Potentaat van de Roos, een persoon die het geheim achter het spel kent. Voor elke worp met de dobbelstenen is er een unieke numerieke oplossing. De spelers moeten de juiste oplossing proberen te achterhalen via inductief redeneren. Indien ze er niet in slagen om de juiste oplossing te raden, wordt de juiste oplossing meegedeeld door de Potentaat van de Roos, en moeten ze proberen om bij een volgende worp de juiste oplossing te raden.

bloemblaadjes rond de roos

Het spel kent slechts drie regels:

Opgave

Om het geheim van het spel niet te onthullen, hebben we het correcte antwoord op de vraag hoeveel bloemblaadjes er rond de roos staan opgeslaan in het bestand bloemblaadjes.txt1. Elke regel van dit bestand bevat zes natuurlijke getallen, die telkens van elkaar worden gescheiden door één enkele spatie. De eerste vijf getallen geven telkens het aantal ogen voor een mogelijke worp met vijf dobbelstenen, terwijl het zesde getal aangeeft met hoeveel bloemblaadjes deze worp correspondeert. Omdat het aantal bloemblaadjes onafhankelijk is van de volgorde van de dobbelstenen (oeps, nu hebben we toch al een deel van de oplossing onthuld) hebben we de eerste vijf getallen telkens in oplopende volgorde gesorteerd, zodat we voor worpen waarbij enkel de volgorde van de dobbelstenen verschilt slechts één enkele regel in het bestand moeten opnemen.

Voorbeeld

>>> oplossingen = leesOplossingen('bloemblaadjes.txt')
>>> oplossingen
{(1, 1, 1, 2, 3): 2, (5, 5, 5, 5, 6): 16, ..., (1, 3, 4, 4, 4): 2}
>>> potentaat([3, 5, 5, 4, 3], oplossingen)
12
>>> potentaat([6, 5, 3, 4, 2], oplossingen)
6