Submission #8957196
Source Code Expand
LAND = "o"
SEA = "x"
class Solver:
def __init__(self, field) -> None:
self.S = 10
self.field = field
def count_land(self, h, w, visited, fill=False):
if not (0 <= h < self.S):
return 0
if not (0 <= w < self.S):
return 0
if visited[h][w]:
return 0
if self.field[h][w] == LAND or fill:
visited[h][w] = True
return sum([
1,
self.count_land(h - 1, w, visited),
self.count_land(h, w - 1, visited),
self.count_land(h, w + 1, visited),
self.count_land(h + 1, w, visited)
])
if self.field[h][w] == SEA:
return 0
return 0
def create_visit_map(self):
return [
[False for _ in range(10)]
for _ in range(10)
]
def count_lands(self):
ret = 0
for i in range(10):
for j in range(10):
ret += 1 if self.field[i][j] == LAND else 0
return ret
def solve(self) -> str:
lands = self.count_lands()
can_union = False
for i in range(10):
for j in range(10):
if self.field[i][j] == SEA:
if self.count_land(i, j, self.create_visit_map(), True) == lands + 1:
can_union = True
break
return 'YES' if can_union else 'NO'
if __name__ == "__main__":
field = []
for _ in range(10):
field.append(list(input()))
s = Solver(field)
print(s.solve())
Submission Info
| Submission Time | |
|---|---|
| Task | B - 埋め立て |
| User | hagino3000 |
| Language | Python (3.4.3) |
| Score | 100 |
| Code Size | 1673 Byte |
| Status | AC |
| Exec Time | 22 ms |
| Memory | 3192 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 100 / 100 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 10_rand_00.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 10_rand_09.txt, 10_rand_10.txt, 10_rand_11.txt, 10_rand_12.txt, 10_rand_13.txt, 10_rand_14.txt, 10_rand_15.txt, 10_rand_16.txt, 10_rand_17.txt, 10_rand_18.txt, 10_rand_19.txt, 10_rand_20.txt, 10_rand_21.txt, 10_rand_22.txt, 10_rand_23.txt, 10_rand_24.txt, 10_rand_25.txt, 10_rand_26.txt, 10_rand_27.txt, 10_rand_28.txt, 10_rand_29.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 19 ms | 3064 KiB |
| 00_sample_01.txt | AC | 19 ms | 3064 KiB |
| 00_sample_02.txt | AC | 19 ms | 3064 KiB |
| 10_rand_00.txt | AC | 22 ms | 3064 KiB |
| 10_rand_01.txt | AC | 19 ms | 3192 KiB |
| 10_rand_02.txt | AC | 21 ms | 3064 KiB |
| 10_rand_03.txt | AC | 20 ms | 3064 KiB |
| 10_rand_04.txt | AC | 19 ms | 3064 KiB |
| 10_rand_05.txt | AC | 21 ms | 3064 KiB |
| 10_rand_06.txt | AC | 19 ms | 3064 KiB |
| 10_rand_07.txt | AC | 22 ms | 3064 KiB |
| 10_rand_08.txt | AC | 20 ms | 3064 KiB |
| 10_rand_09.txt | AC | 20 ms | 3064 KiB |
| 10_rand_10.txt | AC | 21 ms | 3064 KiB |
| 10_rand_11.txt | AC | 22 ms | 3064 KiB |
| 10_rand_12.txt | AC | 21 ms | 3064 KiB |
| 10_rand_13.txt | AC | 19 ms | 3064 KiB |
| 10_rand_14.txt | AC | 22 ms | 3064 KiB |
| 10_rand_15.txt | AC | 21 ms | 3064 KiB |
| 10_rand_16.txt | AC | 19 ms | 3064 KiB |
| 10_rand_17.txt | AC | 19 ms | 3064 KiB |
| 10_rand_18.txt | AC | 21 ms | 3064 KiB |
| 10_rand_19.txt | AC | 21 ms | 3064 KiB |
| 10_rand_20.txt | AC | 22 ms | 3064 KiB |
| 10_rand_21.txt | AC | 19 ms | 3064 KiB |
| 10_rand_22.txt | AC | 22 ms | 3064 KiB |
| 10_rand_23.txt | AC | 21 ms | 3064 KiB |
| 10_rand_24.txt | AC | 22 ms | 3064 KiB |
| 10_rand_25.txt | AC | 19 ms | 3064 KiB |
| 10_rand_26.txt | AC | 21 ms | 3064 KiB |
| 10_rand_27.txt | AC | 19 ms | 3064 KiB |
| 10_rand_28.txt | AC | 22 ms | 3064 KiB |
| 10_rand_29.txt | AC | 22 ms | 3064 KiB |