結果
| 問題 | 
                            No.2666 Decreasing Modulo Nim
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2024-03-08 22:03:03 | 
| 言語 | PyPy3  (7.3.15)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 108 ms / 2,000 ms | 
| コード長 | 389 bytes | 
| コンパイル時間 | 432 ms | 
| コンパイル使用メモリ | 82,048 KB | 
| 実行使用メモリ | 108,544 KB | 
| 最終ジャッジ日時 | 2024-09-29 19:39:14 | 
| 合計ジャッジ時間 | 6,228 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge2 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 55 | 
ソースコード
N, M = map(int, input().split())
A = list(map(int, input().split()))
X = [A[i] // M for i in range(N)]
Y = [A[i] % M for i in range(N)]
xor_x = 0
for i in X:
    xor_x ^= i
if xor_x != 0:
    exit(print("Alice"))
xor_y = 0
for i in Y:
    xor_y ^= i
if xor_y == 0:
    exit(print("Bob"))
k = 1
while xor_y % (2 * k) == 0:
    k *= 2
if k <= M:
    print("Alice")
else:
    print("Bob")