题目解析
对于本题,分两种情况对于偶数层的石子不先手动看后手向下动哪层先手方也动那层这样一定是先手方将偶数层的石子放到最下面。双方移动的次数一样相当于没有操作所以可以不考虑偶数层。而对于奇数层移动一次就到了偶数层同理上文也就可以不考虑,也就是相当于拿走了奇数层的部分石子。那么问题就变成了只考虑奇数层的最经典的Nim游戏问题。
代码
#include<iostream>
using namespace std;
int a[100005];
int main()
{
int n;
cin>>n;
int ans=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
if(i%2==1)
ans^=a[i];
}
if(ans)
cout<<"Yes";
else
cout<<"No";
return 0;
}