摘要:
http://acm.hdu.edu.cn/showproblem.php?pid=1850 Nim博弈,求保证先手必胜可选的方案数。 对于一个必胜的局面,至少有一个方案可以到达必败局面。也就是说,对于a1^a2..^an!=0一定有一个ai可以改为ai',且a1^a2..^ai'..^an==0。设a1^a2..^an=k,则一定存在某个ai,它的二进制表示在k的最高位上是1(因为k的最高位为1),那么有ai^k<ai成立。则a1^a2..^an^k=0,可得ai'=ai^k。 题意找有多少种先手必胜的方案,枚举ai,统计满足ai^k<ai的个数即可。co 阅读全文