Seperti yang Anda paling mungkin sekarang, ada 2339 solusi untuk teka-teki pentomino dalam kisi 6x10. Ada skema pelabelan yang berbeda untuk 12 pentomino, dua di antaranya ditunjukkan pada gambar di bawah ini:
Kredit gambar: Wikipedia
Untuk keperluan tugas saat ini kami akan mengatakan bahwa solusi pentomino yang dinormalisasi adalah solusi yang menggunakan skema pelabelan kedua (Conway's).
Contoh:
O O O O O S S S Z Z
P P R R S S W W Z V
P P P R R W W Z Z V
U U X R T W Y V V V
U X X X T Y Y Y Y Q
U U X T T T Q Q Q Q
Bagian dengan 5 kotak berturut-turut dilambangkan dengan huruf O
, sesuai dengan skema. Hal yang sama berlaku untuk semua bagian.
Tugas:
Diberikan solusi untuk pentomino 6x10 di mana potongan diberi label dengan sheme acak, menormalkannya sehingga semua potongan diberi label dalam skema label Conway. Anda perlu mengenali potongan-potongan itu dan menandai setiap kotak dari potongan tertentu dengan simbol dari potongan itu.
Memasukkan:
Solusi yang akan dinormalisasi, dalam format apa pun yang nyaman bagi Anda, misalnya:
String multiline
Daftar string
Daftar daftar karakter
dan seterusnya
Keluaran:
Solusi yang sama (semua posisi dan orientasi potongan dipertahankan), tetapi setiap bagian diberi label sesuai dengan skema pelabelan Conway. Catatan: Output HARUS DICETAK sebagai kotak karakter 6x10. Jalur dan spasi baris baru dan tertinggal diizinkan. Anda juga dapat mencetak spasi di antara karakter (tetapi bukan baris kosong), seperti pada contoh di atas.
Kasus uji:
1. Masukan:
6623338888
6222344478
66A234BB70
1AAA94B770
11A99BB700
1199555550
Keluaran:
UURTTTQQQQ
URRRTVVVSQ
UUXRTVZZSY
PXXXWVZSSY
PPXWWZZSYY
PPWWOOOOOY
2. Input:
45ookkkk00
455ooogk00
4a55gggdd0
4aaa3gnnd.
4am333ndd.
mmmm3nn...
Keluaran:
OWSSQQQQPP
OWWSSSRQPP
OTWWRRRUUP
OTTTXRZZUV
OTYXXXZUUV
YYYYXZZVVV
Kriteria menang:
Solusi terpendek dalam byte di setiap bahasa menang. Jangan berkecil hati dengan bahasa golf. Penjelasan algoritma dan implementasi dipersilahkan.