結果
| 問題 |
No.2813 Cookie
|
| コンテスト | |
| ユーザー |
katonyonko
|
| 提出日時 | 2024-07-20 13:06:35 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 108 ms / 2,000 ms |
| コード長 | 1,933 bytes |
| コンパイル時間 | 210 ms |
| コンパイル使用メモリ | 82,032 KB |
| 実行使用メモリ | 77,324 KB |
| 最終ジャッジ日時 | 2024-07-20 13:06:40 |
| 合計ジャッジ時間 | 4,991 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 30 |
ソースコード
import io
import sys
from collections import defaultdict, deque, Counter
from itertools import permutations, combinations, accumulate
from heapq import heappush, heappop
from bisect import bisect_right, bisect_left
from math import gcd
import math
_INPUT = """\
6
3
1
1
2
5 5
7
44 65 32 7 100 87 91
"""
# g=[1,1]
# for i in range(3,20):
# s=set()
# for j in range(1,1<<(i-1)):
# x=0
# tmp=1
# for k in range(i-1):
# if j>>k&1:
# x^=g[tmp-1]
# tmp=1
# else:
# tmp+=1
# x^=g[tmp-1]
# s.add(x)
# s=sorted(list(s))
# for j in range(1,100):
# if j not in s:
# g.append(j)
# break
# print(g)
#[1, 1, 2, 2, 4, 4, 6, 8, 8, 10, 12, 12, 14, 16, 16, 18, 20, 20, 22]
def grundy(n):
if n<=2: return 1
elif n<=4: return 2
else:
if n%3==1: return n//3*4-2
else: return (n+1)//3*4-4
# print([grundy(i) for i in range(1,20)])
def input():
return sys.stdin.readline()[:-1]
def solve(test):
T=int(input())
for _ in range(T):
N=int(input())
A=list(map(int,input().split()))
g=grundy(A[0])
for i in range(1,N):
g=g^grundy(A[i])
if g==0:
print('Bob')
else:
print('Alice')
def random_input():
from random import randint,shuffle
N=randint(1,10)
M=randint(1,N)
A=list(range(1,M+1))+[randint(1,M) for _ in range(N-M)]
shuffle(A)
return (" ".join(map(str, [N,M]))+"\n"+" ".join(map(str, A))+"\n")*3
def simple_solve():
return []
def main(test):
if test==0:
solve(0)
elif test==1:
sys.stdin = io.StringIO(_INPUT)
case_no=int(input())
for _ in range(case_no):
solve(0)
else:
for i in range(1000):
sys.stdin = io.StringIO(random_input())
x=solve(1)
y=simple_solve()
if x!=y:
print(i,x,y)
print(*[line for line in sys.stdin],sep='')
break
#0:提出用、1:与えられたテスト用、2:ストレステスト用
main(0)
katonyonko