L'énigme du zèbre est un célèbre casse-tête logique dans lequel il y a cinq maisons, chacune peinte d'une couleur différente. Les maisons abritent des habitants différents, de nationalités différentes, qui possèdent des animaux de compagnie différents, boivent des boissons différentes et ont des loisirs différents.
Pour t'aider à résoudre l'énigme, tu disposes de 15 affirmations qui décrivent la solution. Cependant, ce n'est qu'en combinant les informations de toutes les affirmations que tu pourras trouver la solution de l'énigme.
L'énigme du zèbre est un problème de satisfaction de contraintes (CSP). Dans un tel problème, on dispose d'un ensemble de valeurs possibles et d'un ensemble de contraintes qui restreignent les valeurs valides. Un autre CSP bien connu est le Sudoku.
Tu dois résoudre l'énigme du zèbre pour trouver la réponse à ces deux questions :
Les 15 affirmations suivantes sont toutes 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 différents, boivent des boissons différentes et pratiquent des loisirs différents.
Il y a 24 milliards (5!⁵ = 24 883 200 000) de solutions possibles, alors essaie d'éliminer autant de solutions que possible.
Inscris-toi sur Exercism pour apprendre et maîtriser Elixir avec 58 concepts168 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 !