結果

問題 No.2165 Let's Play Nim!
ユーザー ntuda
提出日時 2023-04-15 23:44:07
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 1,086 bytes
コンパイル時間 246 ms
コンパイル使用メモリ 82,012 KB
実行使用メモリ 117,136 KB
平均クエリ数 812.51
最終ジャッジ日時 2024-10-11 07:45:12
合計ジャッジ時間 36,114 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 31 TLE * 7
権限があれば一括ダウンロードができます

ソースコード

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

from heapq import *
def rec():
ret = int(input())
if ret == -1:
exit()
def out():
global g
maxa = max(A)
g2 = g ^ maxa
if maxa <= g2:
i = A.index(max)
print(i + 1, g2)
else:
g2 = g ^ maxa
for i in range(n):
if A[i] >= g2:
break
g ^= A[i]
A[i] = g
g ^= g
def inp():
global g
i, k = map(int, input().split())
g ^= A[i - 1]
A[i - 1] -= k
g ^= A[i - 1]
n = int(input())
A = list(map(int, input().split()))
g = 0
q = []
for i, a in enumerate(A):
g ^= a
q.append((-a, i))
if g == 0:
print(0)
else:
print(1)
heapify(q)
while 1:
tmpa = []
while g != 0:
x,i = heappop(q)
gtmp = g ^ A[i]
if gtmp < A[i]:
subt = A[i] - gtmp
A[i] = gtmp
g = 0
print(i + 1,subt)
rec()
if gtmp > 0:
tmpa.append((gtmp,i))
else:
tmpa.append((x,i))
for xx in tmpa:
heappush(q,xx)
inp()
rec()
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0