题目描述
船长和田鼠最近在玩一个取石子的游戏,石子共有 n 堆,每堆石子数不超过10^9,两人轮流取石子,每次船长先取,取得石子数只能是质数或一,而且只能取完一堆后才能取下一堆,下一次取得堆编号必须比上一个小,无法再取的人将会输掉比赛。假如两人都是用最优策略,请问谁会赢得比赛呢?
输入
第一行一个整数 T ,代表一共有 T 组测试数据,接下来一行输入n,n < 2^16 ,下一行是 n 个整数代表每一堆的石子数。
输出
如果船长胜利输出"yes",田鼠胜利输出"no",均不带引号。
样例输入
2
2
2016 100
3
4 7 10
样例输出
no
yes
提示
来源
这个。。看的题解。。
ac代码
#include<stdio.h>
#include<string.h>
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
int w=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
int x;
scanf("%d",&x);
if(x%4)
w=1;
}
if(w)
printf("yes\n");
else
printf("no\n");
}
}