結果
| 問題 |
No.2103 ±1s Game
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2022-10-21 22:22:18 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 40 ms / 1,000 ms |
| コード長 | 2,546 bytes |
| コンパイル時間 | 152 ms |
| コンパイル使用メモリ | 81,720 KB |
| 実行使用メモリ | 53,868 KB |
| 最終ジャッジ日時 | 2024-07-01 06:55:35 |
| 合計ジャッジ時間 | 2,601 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 34 |
ソースコード
import sys
input = lambda :sys.stdin.readline()[:-1]
ni = lambda :int(input())
na = lambda :list(map(int,input().split()))
yes = lambda :print("yes");Yes = lambda :print("Yes");YES = lambda : print("YES")
no = lambda :print("no");No = lambda :print("No");NO = lambda : print("NO")
#######################################################################
def f(x,y,k,p,z):
if x + y < k:
return "-"
if k == x + y:
if p == [1,-1][y%2]:
return 1
return 0
if z:
res = 0
if x:
res |= f(x-1, y, k, p, 0)
if y:
res |= f(x, y-1, k, p, 0)
return res
else:
res = 1
if x:
res &= f(x-1, y, k, p, 1)
if y:
res &= f(x, y-1, k, p, 1)
return res
def solve(x,y,k,p):
if p == 1:
if y <= (x + y - k + 1)//2:
ans = 1
elif (x + y - k) % 2:
ans = 1
else:
ans = 0
else:
if y <= (x + y - k)//2:
ans = 0
elif (x + y - k) % 2:
ans = 1
else:
ans = 0
return ans
def solve(x,y,k,p):
if p == 1:
if k % 2:
if x - y >= k:
return 1
elif y - x >= k:
return 0
elif (x + y)%2 == 0:
return 1
else:
return 0
else:
if x - y >= k:
return 1
elif y - x >= k:
return 1
elif (x + y)%2 == 0:
return 0
else:
return 1
else:
if k % 2:
if y - x >= k:
return 1
elif x-y >= k:
return 0
elif (x + y)%2 == 0:
return 1
else:
return 0
else:
if y - x >= k:
return 0
elif x - y >= k:
return 0
elif (x + y)%2 == 0:
return 0
else:
return 1
x,y,k,p = na()
ans = solve(x,y,k,p)
if ans:
print("Alice")
else:
print("Bob")
"""
from random import randint
for _ in range(100):
x,y = randint(1,8),randint(1,8)
k = randint(1, x + y - 1)
p = [-1,1][randint(0,1)]
a1 = f(x,y,k,p,1)
a2 = solve(x,y,k,p)
if a1 != a2:
print(x,y,k,p,a1,a2)"""
"""a = [[[f(x,y,k,-1,1) for y in range(1,10)]for x in range(1,10)]for k in range(1,20)]
for i in a:
for j in i:
print(*j)
print()"""