sudoku, algorythmen und flash…
ich bastel im moment in flash an einem algorythmus um sudoku rätsel zu lösen. jetzt könnte man fragen, wieso willst du ein rätsel von einem rechner lösen lassen... ist ja langweilig...
ja! stimmt! aber um ein sudoku rätsel zu generieren, muss man es lösen können. klingt paradox, ist aber so. und deshalb bastel ich im moment an einer solving funktion...
die medium level auf websudoku kriegt mein kleines tool schon hin, bei hard, das ein oder andere und naja für evil und jedes hard, fehlt noch eine funktion...
danach geht es dann an das rätsel generieren...
ps: wirkt merkwürdig, wenn man ein medium sudoku in 2.11 minuten schafft... ;]
5 Comments »
RSS Feed für Kommentare zu diesem Beitrag. TrackBack URI
Klingt sehr interessant!
Vor allem finde ich die Findung eines (allgemeinen) Algorithmus viel interessanter als das Finden einer (spezifischen) Lösung eines Rätsels.
Die einfachen Sudokus sind ja oft deswegen einfach, weil sie nur eine Lösung zulassen und einen tendenziell geradlinigen Lösungsweg haben.
Für schwerere ist eine Art Brute-Force sicher unumgänglich - also die überhaupt noch möglichen Zahlen irgendwo zu speichern, und dann so lange “probieren” bis halt nur noch eine Lösung übrig bleibt.
BTW: Hast du sonst eignetlich _nix_ zu tun?
was meinst du mit “nur eine lösung zulassen” das ist dochg erade der punkt das es für ein sudoku nur genau eine lösung gibt. der weg dorthin kann aber verschieden sein.
bruteforce..bbrr…natürlich geht das mit nachdenken bzw mit pc. es ist nicht der cleverste weg ein sudoku vom pc lösen zu lassen aber es geht durchaus.
http://norvig.com/sudoku.html ist eine der clevereren wege pcs sudokus lösen zu lassen. allerdigns nicht sehr hilfreich für garrit da es “raten” beinhaltet
Was auch immer ihr da tut : IHR MACHT MIR ANGST !
BTW:
Der Computerclub hat das Thema im letzten Podcast kurz angesprochen. Da wars wenig interessant, allerdings ist ein ausführlicherer Artikel
http://www.wolfgang-back.com/cc2/download/sudoku/erklaerung/sudoku_text.htm zum Thema mit Pocket-PC Programm.