题意:一个棋盘上每个格子摆放一个硬币,硬币有正面1和反面0之分。现在两个人可以按照规则翻硬币,选择(x,y),要求(x,y)的硬币必须是正面,那么从(x,y)向右下角所有的硬币都被翻转。知道某个人无法翻(所有硬币都是反面)为止,这个人判输
思路:考虑最右下角的硬币,每次必被翻转
#include<iostream>
#include<cstring>
#include<string>
using namespace std;
int T,n,m;
int a[200][200];
int main()
{
cin>>T;
while(T--)
{
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
if(a[n][m]==0)
cout<<"Bob"<<endl;
else
cout<<"Alice"<<endl;
}
return 0;
}
772

被折叠的 条评论
为什么被折叠?



