結果
| 問題 |
No.1954 CHECKER×CHECKER(2)
|
| コンテスト | |
| ユーザー |
H20
|
| 提出日時 | 2022-02-16 00:47:44 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 66 ms / 1,000 ms |
| コード長 | 1,407 bytes |
| コンパイル時間 | 191 ms |
| コンパイル使用メモリ | 82,816 KB |
| 実行使用メモリ | 66,304 KB |
| 最終ジャッジ日時 | 2024-06-28 07:42:21 |
| 合計ジャッジ時間 | 3,004 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 29 |
ソースコード
H,W = map(int, input().split())
MAP = []
for _ in range(H):
MAP.append(list(input()))
M = int(input())
TN = [list(map(int, input().split())) for _ in range(M)]
R = [0]
C = [0]
for t,n in TN:
if t==1 and n!=H:
R.append(n)
if t==2 and n!=W:
C.append(n)
R.sort()
C.sort()
RS = set(R)
CS = set(C)
for i in range(H):
for j in range(W):
if (i+j)%2==1:
if MAP[i][j]=='.':
MAP[i][j]='#'
else:
MAP[i][j]='.'
for i in range(H):
for j in range(W-1):
if MAP[i][j]!=MAP[i][j+1] and not j+1 in CS:
print('No')
exit()
for i in range(H-1):
for j in range(W):
if MAP[i][j]!=MAP[i+1][j] and not i+1 in RS:
print('No')
exit()
MAP2 = []
for r in R:
L = []
for c in C:
L.append(MAP[r][c])
MAP2.append(L)
H2 = len(MAP2)
W2 = len(MAP2[0])
for i in range(H2):
if MAP2[i][0]=='#':
for j in range(W2):
if MAP2[i][j]=='.':
MAP2[i][j]='#'
else:
MAP2[i][j]='.'
for i in range(W2):
if MAP2[0][i]=='#':
for j in range(H2):
if MAP2[j][i]=='.':
MAP2[j][i]='#'
else:
MAP2[j][i]='.'
for i in range(H2):
for j in range(W2):
if MAP2[i][j]!=MAP2[0][0]:
print('No')
exit()
print('Yes')
H20