結果

問題 No.2702 Nand Nor Matrix
ユーザー sotanishy
提出日時 2024-03-29 22:58:37
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 285 ms / 2,000 ms
コード長 1,780 bytes
コンパイル時間 302 ms
コンパイル使用メモリ 82,048 KB
実行使用メモリ 132,356 KB
最終ジャッジ日時 2024-09-30 16:43:45
合計ジャッジ時間 16,895 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 51
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import sys
input = sys.stdin.readline
T = 20
def naive(N, A, B, qs):
X = [[[0] * N for _ in range(N)] for _ in range(T)]
for i in range(N):
X[0][0][i] = A[i]
for i in range(1, N):
X[0][i][0] = B[i]
# print(*["".join(map(str, row)) for row in X], sep="\n")
# print()
for t in range(1, T):
for i in range(N):
for j in range(N):
if i == 0 or j == 0:
X[t][i][j] = X[t - 1][i][j]
else:
X[t][i][j] = (
0
if X[t - 1][i][j] + X[t - 1][i - 1][j] + X[t - 1][i][j - 1] >= 2
else 1
)
# print(*["".join(map(str, row)) for row in X], sep="\n")
# print()
return [X[t][r][c] for t, r, c in qs]
def solve(N, A, B, qs):
if N == 1:
return [A[0]] * len(qs)
row = [-1] * N
row[0] = B[1]
for i in range(1, N):
if row[i - 1] == A[i]:
row[i] = A[i] ^ 1
else:
break
col = [-1] * N
col[0] = A[1]
for i in range(1, N):
if col[i - 1] == B[i]:
col[i] = B[i] ^ 1
else:
break
ans = []
for t, r, c in qs:
x = -1
if r == 0:
x = A[c]
elif c == 0:
x = B[r]
elif col[r] == -1 or row[c] == -1 or r + c > t + 1:
x = t % 2
else:
x = A[c] ^ B[r] ^ A[1] ^ 1
ans.append(x)
return ans
N = int(input())
A = list(map(int, input().split()))
B = [A[0]] + [int(input()) for _ in range(N - 1)]
Q = int(input())
qs = []
for _ in range(Q):
t, r, c = map(int, input().split())
qs.append((t, r - 1, c - 1))
print(*solve(N, A, B, qs), sep="\n")
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0