結果

問題 No.2619 Sorted Nim
ユーザー とりゐ
提出日時 2024-01-26 22:35:50
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 107 ms / 2,000 ms
コード長 728 bytes
コンパイル時間 466 ms
コンパイル使用メモリ 82,260 KB
実行使用メモリ 107,012 KB
最終ジャッジ日時 2024-09-28 08:34:16
合計ジャッジ時間 7,973 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 62
権限があれば一括ダウンロードができます

ソースコード

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

import itertools
s={}
def naive(a):
if max(a)==0:
return 0
if tuple(a) in s:
return s[tuple(a)]
g=set()
res=[]
for i in range(len(a)):
for j in range(1,a[i]+1):
b=a.copy()
b[i]-=j
if b==sorted(b):
g.add(naive(b))
t=0
while t in g:
t+=1
s[tuple(a)]=t
return t
def solve(a):
b=a.copy()
if len(a)%2==1:
b=[0]+a
xor=0
for i in range(0,len(b),2):
xor^=b[i+1]-b[i]
return xor
import random
for _ in range(0):
n=random.randint(3,5)
a=[random.randint(1,5) for i in range(n)]
a.sort()
if naive(a)!=solve(a):
print(a,naive(a),solve(a))
n=int(input())
a=list(map(int,input().split()))
if solve(a)!=0:
print('First')
else:
print('Second')
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0