A Zebra Puzzle egy híres logikai rejtvény, amelyben öt ház van, és mindegyik más színre van festve. A házakban különböző lakók élnek: más-más nemzetiségűek, más-más háziállatot tartanak, más-más italt isznak, és más-más hobbinak hódolnak.
Hogy könnyebben megoldd a rejtvényt, 15 állítást kapsz, amelyek leírják a megoldást. A rejtvény megoldását azonban csak úgy találhatod meg, ha az összes állításban szereplő információt összekapcsolod.
A Zebra Puzzle egy megkötés-kielégítési probléma (CSP). Egy ilyen feladatban adott egy lehetséges értékekből álló halmaz, valamint egy megkötéshalmaz, amely korlátozza, hogy mely értékek érvényesek. Egy másik jól ismert CSP a Sudoku.
A feladatod, hogy megoldd a zebrarejtvényt, és megtaláld a választ erre a két kérdésre:
A következő 15 állítás mindegyike igaz:
Ráadásul mind az öt ház különböző színűre van festve, a lakóik pedig különböző nemzetiségűek, különböző háziállatokat tartanak, különböző italokat isznak és különböző hobbinak hódolnak.
24 milliárd (5!⁵ = 24 883 200 000) lehetséges megoldás létezik, ezért próbáld minél több megoldást kizárni.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Odin nyelvet 73 feladat segítségével, valódi emberi mentorálással, mindez ingyen.
Fedezz fel 8 különböző módot arra, hogy megtaláld a Zebra-rejtvény megoldását 24 milliárd lehetséges megoldás közül, beleértve az érvénytelen permutációk mielőbbi figyelmen kívül hagyását, az AC-3 algoritmust, egy nagyon tömör, logikaalapú megoldást, sőt egy genetikus algoritmust is!