UVA - 10165
题目介绍:
Jack and Jim are playing an interesting stone game. At the beginning of the game there are N pile(s)
of stones. Each pile has Pi (i = 1…N, 1 ≤ Pi ≤ 2 ∗ 109
) stones. They take turns to take away some
of the stones. There are some rules: they must choose one pile at a time. They can take away any
number of stones except 0, of course, not bigger than the number of stones in the pile. One who takes
away the last stone will win the game. Jack is the first to fetch the match, and Jim is the second. Now
Jack asks you for help, to decide while facing some initializations whether he is sure to win or not.
大意:
Nim游戏,全部异或,结果不为0则Yes,否则No。
AC代码:
#include<iostream>
using namespace std;
int main(){
int n;
while(scanf("%d",&n)==1&&n){
int a,ans=0;
for(int i=0;i<n;i++){
scanf("%d",&a);
ans^=a;
}
if(ans)printf("Yes\n");
else printf("No\n");
}
return 0;
}