結果
問題 | No.2538 2進元ゲーム |
ユーザー |
|
提出日時 | 2023-08-17 14:21:51 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 1,509 ms / 2,000 ms |
コード長 | 378 bytes |
コンパイル時間 | 264 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 23,220 KB |
最終ジャッジ日時 | 2024-07-23 19:21:58 |
合計ジャッジ時間 | 9,718 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 37 |
ソースコード
gr = [-1] * 60 def g(n): if n < 60 and gr[n] >= 0: return gr[n] f = [0] * 60 d = 0 m = n while m != 0: if m % 2 == 1: f[g(d)] = 1 d += 1 m >>= 1 a = 0 while f[a] == 1: a += 1 if n < 60: gr[n] = a return a n = int(input()) e = 1 x = 0 for i in list(map(int, input().split())): if i < 0: e = 1 - e else: x ^= g(i) print(2 if e == 1 and x == 0 else 1)