Solver Sudoku one-liner karya Arthur Whitney (2011)
(dfns.dyalog.com)Algoritme pemecahan masalah Sudoku
-
Penjelasan masalah Sudoku
- Teka-teki Sudoku terdiri dari kotak 3×3 dalam grid 3×3, dan setiap sel kosong atau berisi angka dari 1 sampai 9.
- Setiap kotak 3×3, 9 baris, dan 9 kolom harus berisi 9 angka tanpa duplikasi.
- Contoh soal dan metode penyelesaiannya disediakan.
-
Ikhtisar algoritme
- Matriks diproses sebagai vektor, dan baris, kolom, serta area Sudoku dinyatakan dengan vektor indeks.
- Pemeriksaan dasar pada teka-teki dilakukan, lalu elemen yang mungkin difilter untuk menemukan solusi.
- Jika sel kosong, proses berpindah ke daftar berikutnya; jika sebuah sel memuat beberapa angka, dipilih dari grup yang paling sempit lalu ditambahkan ke daftar.
- Jika semua sel berisi satu angka, berarti solusi telah ditemukan.
-
Catatan teknis
- Ini adalah solusi yang disediakan oleh Veli-Matti Jantunen, dan ⍺ dapat digunakan untuk merepresentasikan persegi panjang Sudoku.
- Hasilnya mengembalikan vektor semua solusi, ⍬ jika tidak ada, dan '' jika terjadi kesalahan.
- Algoritmenya sederhana: memproses matriks sebagai vektor dan memfilter elemen yang mungkin untuk menemukan solusi.
-
Pendekatan lain
- Pengodean alternatif dari David Crossley dan Arthur Whitney juga disediakan.
- Berbagai gaya pengodean dan pendekatan dijelaskan.
-
Contoh dan penggunaan
- Berbagai contoh pemecahan masalah Sudoku disediakan.
- Fungsi untuk memisahkan kotak internal agar soal Sudoku lebih mudah dibaca juga disediakan.
Ringkasan GN⁺
- Berbagai algoritme dan gaya pengodean untuk memecahkan masalah Sudoku diperkenalkan.
- Teka-teki Sudoku berguna untuk meningkatkan kemampuan berpikir logis dan pemecahan masalah.
- Berbagai pendekatan dapat meningkatkan fleksibilitas dalam menyelesaikan masalah.
- Teka-teki dengan fungsi serupa Sudoku yang direkomendasikan antara lain Kakuro dan KenKen.
1 komentar
Opini Hacker News