結果
| 問題 |
No.2824 Lights Up! (Grid Edition)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-07-25 09:15:37 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 706 bytes |
| コンパイル時間 | 326 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 105,556 KB |
| 最終ジャッジ日時 | 2024-07-26 20:35:45 |
| 合計ジャッジ時間 | 4,003 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 2 |
| other | TLE * 1 -- * 99 |
ソースコード
N = int(input())
S = [[0 if c == '.' else 1 for c in input()]for i in range(N)]
def op(r, c):
S[r][c] ^= 1
S[r - 1][c] ^= 1
S[r][c - 1] ^= 1
S[r - 1][c - 1] ^= 1
S[r][0] ^= 1
S[r - 1][0] ^= 1
S[r][-1] ^= 1
S[r - 1][-1] ^= 1
S[0][c] ^= 1
S[-1][c] ^= 1
S[0][c - 1] ^= 1
S[-1][c - 1] ^= 1
ans = set()
for i in range(1, N):
for j in range(1, N):
if S[i][j]:
ans ^= {(i, j)}
op(i, j)
for i in range(1, N):
if S[i - 1][0]:
for j in range(1, N):
ans ^= {(i, j)}
op(i, j)
if S[0][i - 1]:
for j in range(1, N):
ans ^= {(j, i)}
op(j, i)
if S[0][0]:
ans ^= {(0, 0)}
op(0, 0)
if sum([sum(S[i]) for i in range(N)]):
print(-1)
else:
print(len(ans))
for RC in ans:
print(*RC)