51nod 1605 棋盘问题 (博弈)
题目:传送门。
题意:中文题。T组数据,每组给定一个n*m的棋盘,棋盘中的1代表黑色,0代表白色,每次可以将1或者非2质数的全黑色方形区域变为白色,不能操作者输,问谁能赢。
题解:每次可以将1或者非2质数的全黑色方形区域变为白色,那么每次变化的都是奇数,所以求出黑色方格总和判断奇偶性即可。
#include <iostream> #include <cstdio> #include <cmath> #include <cstring> using namespace std; int main() { int t; int n,m; cin>>t; while(t--) { cin>>n>>m; int sum=0,data; for(int i=1;i<=n*m;i++) { cin>>data; if(data) sum++; } if(sum&1) puts("yadang"); else puts("xiawa"); } return 0; }