def rob(y):
import random
import math
y1 = y//2
for i in range(1,y1+1):
if isinstance(((y-i+1)**0.5/0.5), int) is True:
return i
else:
return(random.randrange(1,y1+1))
def nimu(x):
import random
import math
if x <= 0:
print("输入错误,请输入一个不小于1的整数")
return 0
else:
a = random.randrange(1, x)
while a>1:
c = 1
while True:
if c == 1:
print("目前剩余物品个数:", a, "您最多能取:", int(a / 2), "个物品。", sep='')
b = int(input("人类玩家回合,请输入要取走的个数:"))
if b>0 and b<=(a/2):
c = 1
a = a-b
if a == 1:
print("机器玩家取走了1个物品")
return "人类玩家输了"
else:
if a == 0:
return "人类玩家赢了"
else:
d = rob(a)
a = a - d
print("机器玩家取走了", d, "个物品", sep='')
else:
b = int(input("您输入的数值错误,请重新输入:"))
c = 0
def nims():
c = 1
while c == 1:
if c == 1:
a2 = int(input("请输入一个大于1的随机数:"))
if a2 <= 1:
print("您输入的数值错误")
else:
c = 0
return a2
a3 = nimu((nims()))
print(a3)