Bir çok satırlı dize alır bir program veya fonksiyon yazın 0
'ler ve 1
' s. Dizede başka hiçbir karakter bulunmayacak ve dize her zaman dikdörtgen olacak (tüm satırlar aynı sayıda karaktere sahip olacak), boyutları 1 × 1 kadar küçük olacak, ancak aksi halde 0
'ler ve 1
' ler isteğe göre düzenlenebilir.
Sen dize isteğe bağlı sondaki yeni satır olduğunu varsayalım olabilir ve istenirse herhangi iki farklı kullanabilir yazdırılabilir ASCII yerine karakterleri 0
ve 1
.
Baskı veya iade truthy değeri ise bütün bir yolun bağlı bölgelerini hem 0
'ler ve 1
' ler vardır dizede katı dikdörtgenler , başka çıkışı falsy değer .
Bir yol bağlantılı bölge arasında 0
'herhangi birinden elde edilen ler vasıtasıyla 0
bölgede, diğer 0
' in sadece yukarı hareket ulaşılabilir, aşağı, sol ve sağ diğer 0
sitesindeki (ve değil , çapraz hareket olmayan herhangi bir hareket 1
, ve dizi sınırları dışına çıkmamak ). Aynı fikir 1
yola bağlı bölgeler için de geçerlidir .
Bir katı dikdörtgen bir 0
bireyin vasıtasıyla dikdörtgen tüm alanı ile doldurulur 0
s 've hiçbir 1
Var. Aynı fikir 1
sağlam dikdörtgenler için de geçerlidir .
Bayt cinsinden en kısa kod kazanır. Tiebreaker daha erken bir cevaptı.
(Dize, toroidal sınır koşulları ile sarılmadığını unutmayın .)
Örnekler
1) Bu giriş dizgisi 3 yola bağlı bölgeye (2 için 0
ve 1 için 1
) sahiptir. Yalnızca sağ alt 00
bölge sağlam bir dikdörtgen olsa da, sonuç yanlış olur.
0011
0111
0100
2) Bu giriş dizgisi 4 yola bağlı bölgeye sahiptir (her ikisi için de 2 0
ve 1
). Hepsi sağlam dikdörtgenler, bu yüzden çıktı çok garip olurdu.
0011
0011
1100
3) Bu giriş 2 yola bağlı bölgeye sahiptir, ancak bunlardan sadece bir tanesi katı bir dikdörtgendir, bu nedenle çıktı yanlış olur.
00000000
01111110
00000000
4) Bu giriş sadece 1 yola bağlı bölgeye sahiptir ve temelde sağlam bir dikdörtgendir, bu nedenle çıktı truthy'dir.
11111111
11111111
11111111
Test Kılıfları
Bir T
sadece Giriş dizesi araçları truthy altında, F
araçlar 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