Sebuah Hidoku adalah grid dengan beberapa bilangan bulat pra-diisi dari 1 sampai n 2 . Tujuannya adalah untuk menemukan jalur bilangan bulat berturut-turut (dari 1 hingga n 2 ) di grid. Lebih konkret, setiap sel grid harus mengandung bilangan bulat yang berbeda dari 1 ke n 2 dan setiap sel dengan nilai z ≠ n 2 harus memiliki sel tetangga dengan nilai z + 1 (juga bisa secara diagonal).
Apakah NP sulit untuk memutuskan apakah Hidoku yang diberikan dapat dipecahkan? Pengurangan apa yang bisa digunakan?
Sunting: sesuai dengan komentar, saya berikan sedikit klarifikasi. Diberikan adalah kisi sel, beberapa di antaranya sudah berisi nilai (bilangan bulat dari 1 hingga n²). Kita harus mengisi semua sel yang tersisa dengan bilangan bulat dari 1 hingga , sehingga tidak ada dua sel yang memiliki nilai yang sama dan bahwa setiap sel dengan nilai z ≠ n ² memiliki tetangga dengan nilai z + 1 . Yaitu, setelah mengisi sel, kita harus menemukan jalur 1 , 2 , 3 , ⋯ , n 2 . Di kotak, yang secara logis mengunjungi setiap sel.
Contoh dari Hidoku akan menjadi http://www.janko.at/Raetsel/Hidoku/018.c.gif . Hidoku yang sudah dipecahkan adalah http://diepresse.com/images/uploads/3/f/7/586743/spectrumsommerraetsel_7august_hidoku_schwer_loesung20100810172340.gif , di mana Anda dapat melihat jalur yang saya maksud.
Jawaban:
Saya pikir itu adalah -Lengkap: sebagai diperhatikan oleh Raphael, siklus Hamiltonian pada grafik kotak dengan lubang masalah adalah NP-lengkap ( Alon Itai, Christos Papadimitriou, Jayme Luiz Szwarcfiter: Hamilton Jalan di Grid Grafik SIAM J. Comput.. 11 (4): 676-686 (1982) ).NP
Jadi, mengingat grafik kotak dengan lubang, Anda dapat dengan mudah membuat game Hidoku yang setara di mana sel-sel tetap awal mengisi semua diagonal genap; diagonal ganjil kosong membentuk grafik tidak berarah yang setara dengan grafik kotak asli G dan Hidoku memiliki solusi jika dan hanya jika grafik kotak asli memiliki jalur Hamilton.G G
Gambar 1: grafik kotak dengan lubang dan ekuivalennya Hidoku puzzle (sel biru mewakili sel bernomor awal tetap ( 1 adalah yang pertama, 144 adalah yang terakhir), sel putih adalah sel yang harus diisi pemain, garis ungu menunjukkan urutan sel bernomor awal tetap).12×12 1 144
Garis bantu (diisi) dapat ditambahkan ke bagian bawah atau kanan untuk menjadikannya persegi.
Contoh lain pengurangan dari grafik kisi ke teka-teki Hidoku: grafik kisi 6x4 tertanam dalam kisi 13x13 yang lebih besar; diagonal genap diisi dengan angka tetap, dan sel bebas yang tersisa setara dengan grafik kisi asli.
Gambar lengkap dengan transformasi dapat diunduh di sini .
Beberapa catatan tambahan untuk melengkapi jawabannya:
masalahnya juga dikenal sebagai Hidato ; dewan dapat memiliki bentuk yang sewenang-wenang (tetapi sebagai generalisasi dari kotak kuadrat, itu tetap NP-keras);
Saya pikir aturan asli permainan mengatakan bahwa solusinya harus unik ; jadi masalahnya adalah di AS (AS-keras), dan tidak mungkin di NP.
sumber
(Untuk diskusi tentang masalah serupa, lihat pertanyaan saya beberapa waktu lalu tentang kompleksitas Nurikabe yang ringkas di situs cstheory.SE.)
sumber