Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Surrounded Regions
Bookmark
Input
Example 1
All Surrounded
All Border
Mixed
Custom
board
=
[["X","X","X","X"],["X","O","O","X"],["X","X","O","X"],["X","O","X","X"]]
0
1
2
3
0
1
2
3
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
0
1
2
3
0
1
2
3
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
0
1
2
3
0
1
2
3
scan (
1
,
1
)
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
scan: 5 cells, nothing to start
0
1
2
3
0
1
2
3
scan (
1
,
1
)
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
new region at
(1, 1)
: flood-fill it
0
1
2
3
0
1
2
3
scan (
1
,
1
)
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
flood →
(1, 2)
region: 2 cells
0
1
2
3
0
1
2
3
scan (
1
,
1
)
X
X
X
X
X
O
O
X
X
X
O
X
X
O
X
X
flood →
(2, 2)
region: 3 cells
0
1
2
3
0
1
2
3
scan (
1
,
1
)
X
X
X
X
X
O
X
O
X
X
X
X
O
X
X
X
O
X
X
flip 3 ×
O
→
X
0
1
2
3
0
1
2
3
scan (
3
,
1
)
X
X
X
X
X
X
X
X
X
X
X
X
X
O
X
X
scan: 7 cells, nothing to start
0
1
2
3
0
1
2
3
scan (
3
,
1
)
X
X
X
X
X
X
X
X
X
X
X
X
X
O
X
X
(3, 1)
is on the border →
escape route found
0
1
2
3
0
1
2
3
scan (
3
,
1
)
X
X
X
X
X
X
X
X
X
X
X
X
X
O
X
X
escaped
→ the region stays
O
0
1
2
3
0
1
2
3
X
X
X
X
X
X
X
X
X
X
X
X
X
O
X
X
3 captured
,
1 safe
algo
master
.
io
Step:
Capture every 'O' region that cannot reach the border
0 / 14
Input
Example 1
All Surrounded
All Border
Mixed
Custom
board
=
[["X","X","X","X"],["X","O","O","X"],["X","X","O","X"],["X","O","X","X"]]
0 / 14
algo
master
.
io
Step:
Capture every 'O' region that cannot reach the border