結果
問題 | No.179 塗り分け |
ユーザー |
|
提出日時 | 2021-05-01 09:31:35 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,240 bytes |
コンパイル時間 | 211 ms |
コンパイル使用メモリ | 82,372 KB |
実行使用メモリ | 77,440 KB |
最終ジャッジ日時 | 2024-07-19 15:48:04 |
合計ジャッジ時間 | 4,799 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 38 WA * 2 |
ソースコード
def solve(grid): for h0 in range(H): for w0 in range(W): if (h0,w0)==(0,0): continue flg=0 used=[[0]*W for _ in range(H)] for h in range(H): for w in range(W): if grid[h][w]==".": continue if grid[h][w]=="#": if used[h][w]==1: continue if not (h+h0<0 or w+w0<0 or h+h0>=H or w+w0>=W or grid[h+h0][w+w0]=="."): used[h+h0][w+w0]=1 continue flg=1 break if flg==1: break if flg==0: return True return False H,W=map(int,input().split()) grid=[[0]*W for _ in range(H)] cnt=0 for h in range(H): for w,s in enumerate(input().rstrip()): grid[h][w]=s if s=="#": cnt+=1 if cnt==0: print("YES") exit() res=0 res|=solve(grid) for h in range(H): grid[h].reverse() res|=solve(grid) grid.reverse() res|=solve(grid) for h in range(H): grid[h].reverse() res|=solve(grid) print("YES" if res else "NO")