Nim 博弈

一,题意:

有n堆石子,每堆有ai个石子,Alice与Bob两人轮流取石子,每次取石子要求从非空

堆中取走至少一颗石子,Alice为先手,取光所有石子的一方获胜,

二,解析:

该题为标准的Nim博弈,

必胜态(非奇异态):a1 ^ a2 ^ a3 …… ^an != 0;

必败态(奇异态):   a1 ^ a2 ^ a3 …… ^an  == 0;

三,代码:

#include 
#include 
using namespace std;
int N;
int a[1000];

int main()
{
    while(scanf("%d",&N)!=EOF && N)
    {
        for(int i=0;i




你可能感兴趣的:(博弈论)