Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Jester01

    veterán

    válasz andriscs #557 üzenetére

    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]

  • Jester01

    veterán

    válasz andriscs #557 üzenetére

    Ha jól látom a műveletek mindegyike visszafordítható, mert eleget tesz a feltételnek. Tehát kapásból minden állapotból vissza lehet menni az előzőbe és ezt a validOperators engedélyezi is.
    A belinkelt doksiban levő gráfot nézve a harmadik szinten lévő (3,3,B) állapotokat mind kihúzta, mert az a kiindulási állapothoz visz vissza.
    A (2, 3, B) állapotot pedig két úton is elérte, a (2,2,J) és az (1,3,J) állapoton keresztül. A másodikat át is húzta: ''jó állapot, de már szerepelt'' megjegyzéssel.

    Szóval ezeknek az eseteknek a lekezelését nem látom. Egyszerűbben fogalmazva: biztos, hogy rossz állapotok kerülnek a listába, és nem a duplikátumok miatt van benne túl sok elem?

Új hozzászólás Aktív témák