题意:两个取石头,分别在N堆里去。只有第一堆取完才能取第二堆,以此类推,最后一个取完的为赢家。
思路:从头开始扫,直到第一个不为1为止,判断现在的主动权在谁手里,谁就是赢家。(这里读者可以自己写几组数据试试。)
AC代码:
#include<stdio.h> #include<string.h> int main() { int yaoga; int t,i,n; int a[1010]; while(scanf("%d",&t)!=EOF) { while(t--) { scanf("%d",&n); int count=0; bool ok=true; for(i=1;i<=n;i++) { scanf("%d",&a[i]); if(a[i]>1) ok=false; if(ok) count++; } if(ok) { if(count%2==0) printf("No\n"); else printf("Yes\n"); } else { if(count%2) printf("No\n"); else printf("Yes\n"); } } } return 0; }
时间: 2024-12-13 15:46:44