#P1015. 【中山市第十二届义务教育段学生信息学邀请赛】六形棋(chess)
【中山市第十二届义务教育段学生信息学邀请赛】六形棋(chess)
题目描述
Jimmy 和 Chen 在下一种奇怪的棋,叫做六形棋。
棋盘由 个六边形格子构成,如下图所示:
当棋盘上的两个六边形格子有一条边重合的时候,我们称两个格子是互相连通的。将从上往下第 行、从左到右第 个格子称为 。对于一个不在边界上的格子 ,它和 $(i,j+1),(i,j−1),(i+1,j),(i+1,j−1),(i−1,j),(i−1,j+1)$ 这 个格子互相连通,而边界上的格子只与上述格子中未出界的格子互相连通。
六形棋的游戏规则如下:两人轮流下棋,Jimmy 先手,Jimmy 每次选一个空的格子下一个红色棋子,接下来 Chen 每次选一个空的格子下一个蓝色棋子,依次类推。如果最后 Jimmy 将上下两条红色的边界用红色棋子连通了,那么 Jimmy 胜;相反,如果 Chen 将左右两条蓝色边界用蓝色棋子连通了,那么 Chen 胜。
接下来给出若干个六形棋的棋盘,请你判断每一局是 Jimmy 胜,还是 Chen 胜,还是目前未分出胜负(容易证明,不可能两人都达到获胜条件)。
输入
从文件 chess.in
中读入数据。
本题输入有多组测试数据。
第一行一个正整数 ,代表他们下了 盘棋。
每组数据的第一行为一个正整数 ,代表棋盘的大小。
每组数据的第 行,每行 个 中的整数,第 行的第 个整数代表格子 的状态,如果为 则该格子中为蓝色棋子,如果为 则该格子为空,如果为 则该格子中为红色棋子。
输出
输出到文件 chess.out
中。
输出共 行,每行一个字符串,表示输入的棋盘对应的局面:如果 Jimmy 胜,则输出 Jimmy
;如果 Chen 胜,则输出 Chen
;如果目前未分出胜负,则输出 yet
。注意:Jimmy
和 Chen
的首字母都需要大写。
样例数据
3
4
0 1 0 ‐1
0 ‐1 1 0
‐1 ‐1 1 0
0 0 1 0
4
0 1 1 ‐1
0 ‐1 1 0
‐1 ‐1 1 0
0 0 1 0
4
0 1 ‐1 ‐1
0 ‐1 1 1
‐1 ‐1 1 0
0 0 1 0
yet
Jimmy
Chen
样例解释
在第一个棋盘中,不存在将上下边界连通的红色棋子序列,也不存在将左右边界连通的蓝色棋子序列,故目前未分出胜负。
在第二个棋盘中,上下两个边界由 这些红色棋子连通了,所以 Jimmy 获胜了。
在第三个棋盘中,左右两个边界由 这些蓝色棋子连通了,所以 Chen 获胜了。
数据范围
对于 的数据,保证 。
对于另外 的数据,保证给出的棋局已经分出胜负。
对于 的数据,保证 。