L’énigme du zèbre est un célèbre problème de logique qui met en scène cinq maisons, chacune peinte d’une couleur différente. Ces maisons ont des habitants différents, qui ont des nationalités différentes, possèdent des animaux domestiques différents, boivent des boissons différentes et fument des marques de cigarettes différentes.
Pour t’aider à résoudre l’énigme, on te donne 15 assertions qui décrivent la solution. Cependant, ce n’est qu’en combinant les informations de toutes les assertions que tu pourras trouver la solution de l’énigme.
L’énigme du zèbre est un problème de satisfaction de contraintes (CSP). Dans ce type de problème, on dispose d’un ensemble de valeurs possibles et d’un ensemble de contraintes qui limitent les valeurs valides. Un autre CSP bien connu est le Sudoku.
Ta tâche est de résoudre l'énigme du zèbre pour trouver la réponse à ces deux questions :
Les 15 affirmations suivantes sont toutes connues comme vraies :
De plus, chacune des cinq maisons est peinte d'une couleur différente, et leurs habitants sont d'origines nationales différentes, possèdent des animaux de compagnie différents, boivent des boissons différentes et fument des marques de cigarettes différentes.
Il y a 24 milliards (5!⁵ = 24 883 200 000) de solutions possibles, alors essaie d'en éliminer autant que possible.
Inscris-toi sur Exercism pour apprendre et maîtriser Nim avec 70 exercices, et un vrai mentorat humain, le tout gratuitement.
Explore 8 façons différentes de trouver la solution de l'énigme du zèbre parmi 24 milliards de solutions possibles : ignorer le plus tôt possible les permutations invalides, l'algorithme AC-3, une solution très concise fondée sur la logique et même un algorithme génétique !