Teka-teki menarik datang kepada saya sambil melihat tombol lift pagi ini.
Anda harus membuat daftar semua pola Braille yang sesuai dengan kisi 2x3. Gunakan hash #
untuk menunjukkan benjolan dan tanda hubung -
untuk menunjukkan daerah datar.
Sampel keluaran yang diharapkan:
#-
--
--
##
--
--
#-
#-
--
(and so on...)
Aturan:
- Program Anda harus memisahkan setiap pola dengan setidaknya satu karakter atau garis.
- Pola dapat dihasilkan dalam urutan apa pun.
- Semua pola, apa pun alfabet Braille yang sebenarnya digunakan, harus dibuat. Pola yang benar-benar kosong adalah opsional.
- Hanya pola benjolan unik yang harus dihasilkan. Pola berikut ini dianggap sama karena benjolan berada dalam pengaturan yang identik. Dalam kasus ini, gunakan pola yang paling dekat dengan sudut kiri atas (mis. Opsi pertama dalam contoh ini.)
#- -# -- --
#- -# #- -#
-- -- #- -#
Bonus poin jika Anda dapat membuatnya bekerja untuk setiap x oleh y kotak berukuran. ( EDIT: Dalam batas wajar. Hingga 4x4 sudah cukup untuk bukti konsep.)
Membaca artikel wiki, tampaknya ada 45 pola (termasuk yang kosong) yang memenuhi aturan teka-teki ini.
x
xy
kisi Anda menghasilkan2^(xy)
angka pertama dan memfilter angka yang menutupi 0 terhadap2^x - 1
atau(2^(xy+1) - 1)/(2^y - 1)
.