Üdv!
Mindjárt meg fog dorgálni SzP :), mert azt hiszem külön említette órán külön, hogy NE clpb-be, mert az nagyon-nagyon lassú.
Ma megírtam a nagyházit, mégpedig clpb-re alapozva.
Felvettem minden ujj részére 3 változót, a három irányt, amerre mutathat, a
három ujjirányból pontosan 1 igaz. Majd minden mezőhöz kigyűjtöttem egy
listába azokat az ujjirányokat, amik rá mutathatnak, és ezek közül pontosan
annyi igaz, ahányas számú a mező (kivéve a 9-est).
Tehát mindenhol card() feltételt használtam.
És katasztrófa! A mezők feltételei (tehát a sat(card(...))) percekig futnak.
Próbálkoztam azzal, hogy a feltételeket kigyűjtöm egy listába, sorba
rendezem aszerint, hogy hányas a mező - így hátha a kisebbek
behelyettesítenek párat, de semmi javulás. (Bizonyára mindig mindenkit
felkelt és rugdos, hogy mi lenne ha te most igaz lennél?... Ez lassabb, mint
maga a lableing, és a memória is elfogy!)
Az lenne a megoldás, gondolom, hogy a sat(card) egy gyengébb változatát
használnám, ami csak a tuti behelyettesítéseket szűkítené, dobná el - de ha
jól tudom, a clpb-hez nem lehet hozzányúlni.
Vagy írjam meg clpfd-ben a sat(card())-ot, és azzal futtassam?
Üdv.
SzaMa
_______________________________________________
NHLP-l mailing list
NHLP-l@sziami.cs.bme.hu
http://sziami.cs.bme.hu/mailman/listinfo/nhlp-l