巴什博弈、nim游戏::
B站关于巴什博弈和nim的讲解
巴神博弈总结:
一共有n个石子,一次最多拿m个,最少拿k个,无石可拿者输 (拿最后一块者胜) 先手必胜的条件是:
n%(m+k)!=0
nim游戏总结:
n堆石子,第i堆有ai个石子,每次可从任意堆中取任意个石子,不能不取,无石可拿者输 (拿最后一块者胜),先手必胜的条件是:
所有堆石子的数量的异或 !=0,即:
a1 ⊕ a2 ⊕ a3 ⊕ …!=0
异或运算法则:
同为0,异为1
a ⊕ 0 =a
a ⊕ a = 0
其他的数字异或运算要先转换成二进制才可以!
python异或运算符就是 ^