結果
問題 |
No.3120 Lower Nim
|
ユーザー |
|
提出日時 | 2025-04-19 07:31:44 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,215 bytes |
コンパイル時間 | 559 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 95,020 KB |
平均クエリ数 | 1506.32 |
最終ジャッジ日時 | 2025-04-19 07:32:00 |
合計ジャッジ時間 | 14,543 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 25 WA * 6 RE * 12 |
ソースコード
# written by ChatGPT o4-mini-high (really sorry) N = int(input().strip()) A = list(map(int, input().split())) K = 10**9 xor_all = 0 for a in A: xor_all ^= a if xor_all != 0: print("First", flush=True) my_turn = True else: print("Second", flush=True) my_turn = False while True: if my_turn: xor_all = 0 for a in A: xor_all ^= a idx = -1 mn = 2**100 for i, a in enumerate(A): t = a ^ xor_all if t < a: x = a - t if x <= K and x < mn: idx = i mn = x if idx == -1: for i, a in enumerate(A): if 1 <= a <= K: x = a idx = i break A[idx] -= x K = x print(idx+1, x, flush=True) ret = int(input().strip()) if ret != 0: exit(0) my_turn = False else: line = input().split() if not line: exit(0) j, x = map(int, line) ret = int(input().strip()) A[j-1] -= x K = x if ret == -1: exit(0) my_turn = True