Tulis program atau fungsi yang menggunakan string multiline 0
's dan 1
' s. Tidak ada karakter lain dalam string dan string akan selalu persegi panjang (semua garis akan memiliki jumlah karakter yang sama), dengan dimensi sekecil 1 × 1, tetapi jika 0
's dan 1
' dapat diatur secara sewenang-wenang.
Anda dapat mengasumsikan string memiliki baris tambahan opsional, dan jika diinginkan Anda dapat menggunakan dua karakter ASCII yang dapat dicetak untuk menggantikan 0
dan 1
.
Cetak atau kembalikan nilai kebenaran jika semua wilayah jalur yang terhubung baik 0
dari dan 1
di dalam string adalah persegi panjang yang solid , selain itu menghasilkan nilai palsu .
Sebuah jalan wilayah terhubung dari 0
'berarti s bahwa dari salah satu 0
di wilayah tersebut, semua yang lain 0
' s dapat dicapai dengan hanya bergerak ke atas, bawah, kiri dan kanan untuk lainnya 0
's (dan tidak bergerak diagonal, tidak bergerak untuk setiap 1
, dan tidak bergerak di luar batas string). Ide yang sama berlaku untuk 1
jalur yang terhubung wilayah.
Sebuah persegi panjang yang solid dari 0
's berarti seluruh area persegi panjang diisi dengan 0
' s dan tidak ada 1
's. Gagasan yang sama berlaku untuk 1
persegi panjang yang solid.
Kode terpendek dalam byte menang. Tiebreaker adalah jawaban sebelumnya.
(Perhatikan bahwa string tidak membungkus dengan kondisi batas toroidal .)
Contohnya
1) String input ini memiliki 3 jalur yang terhubung wilayah (2 untuk 0
dan 1 untuk 1
). Hanya daerah kanan bawah 00
adalah persegi panjang yang solid, jadi outputnya akan palsu.
0011
0111
0100
2) String input ini memiliki 4 jalur yang terhubung wilayah (2 untuk keduanya 0
dan 1
). Semua dari mereka adalah persegi panjang yang solid sehingga hasilnya akan benar.
0011
0011
1100
3) Input ini memiliki 2 jalur yang terhubung dengan daerah, tetapi hanya satu dari mereka adalah persegi panjang yang solid, sehingga hasilnya akan palsu.
00000000
01111110
00000000
4) Input ini hanya memiliki 1 jalur yang terhubung wilayah dan biasanya merupakan persegi panjang yang solid, sehingga hasilnya benar.
11111111
11111111
11111111
Uji Kasus
Sebuah T
tepat di bawah berarti string input truthy, F
berarti falsy.
0
T
1
T
00
T
01
T
10
T
11
T
0000000
T
1111111
T
011100100100101100110100100100101010100011100101
T
00
11
T
01
10
T
01
11
F
00
01
F
11
11
T
110
100
F
111
000
T
111
101
111
F
101
010
101
T
1101
0010
1101
0010
T
1101
0010
1111
0010
F
0011
0111
0100
F
0011
0011
1100
T
00000000
01111110
00000000
F
11111111
11111111
11111111
T
0000001111
0000001111
T
0000001111
0000011111
F
0000001111
1000001111
F
1000001111
1000001111
T
1110100110101010110100010111011101000101111
1010100100101010100100010101010101100101000
1110100110010010110101010111010101010101011
1010100100101010010101010110010101001101001
1010110110101010110111110101011101000101111
F