A Harry Potter és a bölcsek köve végén van egy érdekes rejtvény. Harry és Hermione belépnek a szobába, majd mágikus tűz zárja el a bejáratokat, és csak a következő rejtvény megfejtésével tudnak elhagyni:
Veszély van előtted, és üdvösség van mögötted,
Két ember, akit közöttünk talál, segíteni fog neked;
A hét egyikével tovább haladsz előre
A másik azonnal visszaviszi.
Kettőnkben csak csalán bort találsz,
Három pedig pusztulást hoz, titokban sorban állva.
Tehát válaszd ki, melyikből kóstolsz,
Ehhez adunk négy tippet.
Hiába próbálta a méreg elrejteni halálos hőjét,
Mindig megtalálod őt a bor bal oldalán,
És tudd, hogy a széleken állóknak más ajándékuk van,
De ha folytatni akarja, senki nem fog segíteni.
Mindannyian különböző méretűek, széltől szélig,
Halálod nem a kisebbben ül, de a nagyobbban sem;
A második jobbról, a második balról
Olyan az ízük, mint az ikrek, bár nem hasonlítanak egymásra.
[a "Harry Potter és a bölcsek köve" című könyv "népi fordításából"]
Egyszerűen fogalmazva, meg kell érteniük, hogy mely üvegek milyen bájitalokat tartalmaznak.
Ebben a cikkben ennek a rejtvénynek mind a 42 lehetséges változatát programozással megoldjuk, és diagramot rajzolunk az eredményekről (mint a fenti képen, csak sokkal nagyobb).
Várj egy pillanatot, honnan jött a 42 lehetőség?
Ennek az az oka, hogy a „kisebb” és „nagyobb” italok helye nincs feltüntetve. A nagyobbik hét hely valamelyikén lehet, ami 6 lehetőséget ad a kisebbre, összesen 7 * 6 = 42. Nem lehet majd kideríteni, hogy JK Rowling pontosan milyen elrendezésre gondolt, amikor előállt. ezzel a rejtéllyel, hacsak nem beszél róla a Twittereden. Nos, amíg el nem jön ez az elkerülhetetlen nap, választhatunk egy véletlenszerű verziót, és dolgozhatunk vele. Megoldhatóságára azonban nem lesz garancia, ezért a közjóért dolgozunk, a rejtvény mind a 42 változatát megfejtve (illetve megfejthetetlenségét bizonyítva).
DÖNTÉS MÁR
Először is, itt van a rejtvény összes korlátja, egyszerű kifejezésekkel újra megfogalmazva:
- Két ártalmatlan bájital létezik, 3 mérgező, az egyik, amely lehetővé teszi az előrelépést, a másik pedig a visszalépést.
- A két ártalmatlan bájital bal oldalán egy-egy mérgező található.
- A bájitalok mindkét oldalon eltérőek, és egyik sem engedi, hogy előrelépj.
- A legnagyobb és a legkisebb palackok nem tartalmaznak mérget.
- A bal oldali második és a jobb oldali második üveg ugyanazt a főzetet tartalmazza.
Hogyan kezeljük ezt? Tekintsük a következő lehetőséget. Vegye figyelembe, hogy ahogy a rejtvény mondja, a sorban 1 üveggel kisebb, mint az összes többi méretben, és 1 palackkal nagyobb, mint az összes többinél.
Próbáljuk meg ostobán végigmenni az összes lehetőségen - vegyünk egy-egy üveget, és válasszuk ki a tartalom összes lehetséges opcióját.
Például az első üveg nem tartalmazhat olyan bájitalt, amely a 3. számú korlátozás miatt visz előre. Nem tartalmaz biztonságos főzetet sem a 2. számú korlátozás miatt - nem lehet méreg tőle balra. Így marad a méregfőzet és a visszadobott bájital választása. Próbáljuk meg mindkét lehetőséget.
A következő képeken a zöld italok a mérget, a narancssárga a biztonságos italokat, a kék a hátrafelé mozgó bájitalokat, a lila pedig az előre haladó italokat.
Ismételjük meg ezt a folyamatot mindkét munkalehetőségnél – vegye a második palackot, és felváltva próbálja ki az összes elfogadható tartalombeállítást. Ezzel a következőket kapjuk:
Továbbra is ebben a szellemben járunk el, és elvetünk minden olyan munkalehetőséget, amelyben egyes palackok nem tölthetők meg bájitallal a felsorolt korlátozások megszegése nélkül, az egyetlen elfogadható megoldáshoz jutunk:
Természetesen nem volt garanciánk a megoldásra. Lehet, hogy nincs megoldás, vagy több is lehet (és ha több megoldásod van, akkor ez ugyanaz, mintha a rejtvényt lehetetlen megfejteni, mert nem tudod, melyik bájital a helyes).
Ha az algoritmust minden opcióra alkalmazzuk, a következő megoldásokat kapjuk. A rejtvény 8 változata megoldható, 8-nak nincs megoldása, 26-nak pedig több megoldása van.
Bővebben a megoldásokról
A rejtvény minden megoldott változatában van valami közös? Igen! Felhívjuk figyelmét, hogy bennük a legkisebb vagy legnagyobb palackok a 2. vagy 6. helyen vannak. Ebből arra következtethetünk, hogy a 2. és 6. üveg biztonságos italokat tartalmaz a 4. és 5. korlátozás miatt. E lépés nélkül nem tudjuk kizárni annak lehetőségét, hogy ezek a palackok mérget tartalmaznak, és több lehetséges megoldáshoz jutunk. A szintén megoldott lehetőségek megkövetelik, hogy a második "speciális" palack (legkisebb vagy legnagyobb) a 3. vagy 4. helyre kerüljön. Ellenkező esetben a minket előrevivő bájital pontos helyét nem lehet megtalálni.
Eredményei
Egy idézettel a könyvből zárom.
Hermione hangosan kifújta a levegőt, és Harry csodálkozva vette észre, hogy mosolyog – ez volt az utolsó dolog, ami eszébe juthatott. – Zseniális – mondta Hermione. - Ez nem varázslat - ez logika, rejtvény. A legnagyobb bűvészeknek egy csepp logikája sincs, és örökre itt ragadnának."
De várjunk egy kicsit – talán kitaláljuk a rejtvény kanonikus változatát a könyv párbeszéde alapján:
– Értem – mondta. "A legkisebb üveg átvezet minket a fekete tűzön és a Kőhöz."
...
– És melyik engedi meg, hogy visszatérj a bíbor tűzön keresztül?
Hermione egy kerek üvegre mutatott a sor jobb oldalán.
A fenébe is. Ez a lehetőség továbbra is számos megoldást kínál számunkra. Tweet, DR.
Kód
Ha érdekli a rejtvény megfejtéséhez és a diagramok megrajzolásához szükséges kód, megteheti
Forrás: will.com