Khm, rossz a gráf a doksiban 
A (3,2,J) nem megengedett állapot, hiszen többen vannak a kannibálok.
Kicsit átalakítottam a kódot, ebből látszik, hogy alapvetően jól működik, csak a sok listás varázslásban elvesztél. [link]
Megcsináltam a már érintett állapotok kiszűrését is. Neked majd a költségeket figyelembe kell venni, én most simán nullát írtam mindenhova.
Futás eredmény minta:
Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 1 0 )
Creating Level 1
(Misszionáriusok:2, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 2 1 )
(Misszionáriusok:1, Kannibálok:3, Hajó bal parton van?: false, isAllowed: false 3 1 )
(Misszionáriusok:3, Kannibálok:1, Hajó bal parton van?: false, isAllowed: true 4 1 )
(Misszionáriusok:2, Kannibálok:3, Hajó bal parton van?: false, isAllowed: false 5 1 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 6 1 )
Level 1 raw count = 3
(Misszionáriusok:2, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 2 1 )
(Misszionáriusok:3, Kannibálok:1, Hajó bal parton van?: false, isAllowed: true 4 1 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 6 1 )
Level 1 pruned count = 3
(Misszionáriusok:2, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 2 1 )
(Misszionáriusok:3, Kannibálok:1, Hajó bal parton van?: false, isAllowed: true 4 1 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: false, isAllowed: true 6 1 )
Creating Level 2
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 7 2 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: true, isAllowed: true 8 2 )
(Misszionáriusok:2, Kannibálok:3, Hajó bal parton van?: true, isAllowed: false 9 2 )
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 10 4 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: true, isAllowed: true 11 4 )
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 12 6 )
Level 2 raw count = 5
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 7 2 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: true, isAllowed: true 8 2 )
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 10 4 )
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: true, isAllowed: true 11 4 )
(Misszionáriusok:3, Kannibálok:3, Hajó bal parton van?: true, isAllowed: true 12 6 )
Level 2 pruned count = 1
(Misszionáriusok:3, Kannibálok:2, Hajó bal parton van?: true, isAllowed: true 8 2 )
[Szerkesztve]