链接:https://ac.nowcoder.com/acm/contest/4114/E
来源:牛客网
棋技哥
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
题目描述
火山哥和鸡老八在下棋。
这张棋盘是 n×m的。每一个格子要么是黑色的,要么是白色的。
两个人轮流进行操作。火山哥先手。每一次可以选择一个黑色的格子,以这个格子为右下角,棋盘左上角为左上角,将这个矩阵的所有格子的颜色由黑变成白,由白变成黑。如果找不到一个黑色的格子,那么那个人就输了。
现在两个人都想让火山哥赢,请问谁能赢呢。
输入描述:
第一行一个整数 {T}T,表示有 {T}T 组数据。
每组数据第一行两个整数 {n,m}n,m,表示棋盘的大小。
接下来 {n}n 行每行 {m}m 个字符0(白色)或者1(黑色),描述了这个棋盘的初始状态。
输出描述:
对于每组的每个询问,输出一行,如果火山哥赢输出“call”,鸡老八赢输出“aoligei”(不含引号)。
示例1
输入
复制
3
2 2
11
11
3 2
01
10
11
2 2
00
11
输出
复制
call
aoligei
aoligei
本题解由zxy倾情赞助 提供。
史上最简洁题解,一秒就懂
#include<iostream>
#include<algorithm>
#include<iomanip>
#include<string>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<queue>
#include<map>
#include<set>
#include<string>
#include<stack>
using namespace std;
string s[503];
int n,m;
signed main() {
int t;
scanf("%lld",&t);
while(t--)
{
scanf("%lld%lld",&n,&m);
for(long long i=1;i<=n;i++)
{
cin>>s[i];
s[i]=' '+s[i];
}
if(s[1][1]=='1')
{
cout<<"call"<<endl;
}else
{
cout<<"aoligei"<<endl;
}
}
return 0;
}