class Solution:
def solve(self, board: List[List[str]]) -> None:
def Erase(rid, cid):
if rid < 0 or cid < 0 or rid > len(board) -1 or cid > len(board[0]) -1 or board[rid][cid] in ('X', 'E'):
return
board[rid][cid] = 'E'
Erase(rid-1, cid)
Erase(rid+1, cid)
Erase(rid, cid-1)
Erase(rid, cid+1)
for rid, row in enumerate(board):
for cid, column in enumerate(row):
if rid == 0 or cid == 0 or rid == len(board) -1 or cid == len(board[0])-1:
if board[rid][cid] == 'O':
Erase(rid, cid)
for rid, row in enumerate(board):
for cid, column in enumerate(row):
if board[rid][cid] == 'O':
board[rid][cid] = 'X'
if board[rid][cid] == 'E':
board[rid][cid] = 'O'
1609A - Divide and Multiply | 149B - Martian Clock |
205A - Little Elephant and Rozdil | 1609B - William the Vigilant |
978B - File Name | 1426B - Symmetric Matrix |
732B - Cormen --- The Best Friend Of a Man | 1369A - FashionabLee |
1474B - Different Divisors | 1632B - Roof Construction |
388A - Fox and Box Accumulation | 451A - Game With Sticks |
768A - Oath of the Night's Watch | 156C - Cipher |
545D - Queue | 459B - Pashmak and Flowers |
1538A - Stone Game | 1454C - Sequence Transformation |
165B - Burning Midnight Oil | 17A - Noldbach problem |
1350A - Orac and Factors | 1373A - Donut Shops |
26A - Almost Prime | 1656E - Equal Tree Sums |
1656B - Subtract Operation | 1656A - Good Pairs |
1367A - Short Substrings | 87A - Trains |
664A - Complicated GCD | 1635D - Infinite Set |