{"trustable":false,"sections":[{"title":"题目描述","value":{"format":"MD","content":"你的任务是模拟黑白棋游戏的进程。黑白棋的规则为:黑白双方轮流放棋子,每次必须让新放的棋子“夹住”至少一枚对方棋子,然后把所有被新放棋子“夹住”的对方棋子替换成己方棋子。一段连续(横、竖或者斜向)的同色棋子被“夹住”的条件是两端都是异色棋子(不能是空位)。\n\n![](https://raw.githubusercontent.com/GavinSun0921/photo/main/T5.png)\n\n如图所示,白棋有 8 个合法操作,分别为$(2,3),(3,3),(3,5),(3,6),(6,2),(7,3),(7,4),(7,5)$。选择在$(7,3)$放白棋后变成如图所示效果(注意有竖向和斜向的共两枚黑棋变白)。注意$(4,6)$的黑色棋子虽然被夹住,但不是被新放的棋子夹住,因此不变白。\n\n"}},{"title":"输入格式","value":{"format":"MD","content":"输入的第一行是要处理的游戏数量。\n\n每局棋由棋盘配置和命令列表组成。棋盘配置由9行组成。前8行指定棋盘的当前状态。这8行中的每一行都包含8个字符,每一个字符都将是以下的一个:\n\n- \u0027-\u0027表示未被占据的方块,\n\n- \u0027B\u0027表示被黑盘占据的方块,\n\n- \u0027W\u0027表示被白盘占据的方块,\n\n\n第九行是 \"B \"或 \"W\",表示哪个是当前的棋手。你可以认为数据的格式是合法的。\n\n然后是一系列的命令。这些命令是为了列出当前棋手的所有可能的棋步。下棋,或退出当前游戏。每行有一条命令,输入中没有空白。"}},{"title":"输出格式","value":{"format":"MD","content":"这些命令和相应的输出的格式如下:\n\n1. **列出当前棋手的所有可能棋步:** 该命令是一个 \"L\",在第一列的 行中的一个 \"L\"。程序应该浏览棋盘并打印出当前棋手的所有合法棋步 格式(x,y),其中x代表合法棋步的行,y代表其列。这些棋步应按行列的顺序打印,也就是说行更小的应该更先被打印,如果行相同则列更小的应该优先被打印。所有的合法棋步都应该放在一条线上。如果没有合法的棋步,因为当前的棋手不可能将任何棋子括起来。棋手不可能包围任何棋子,程序应该打印出 \"No legal move.\"的信息。\n\n2. **落棋:**该命令是在行的第一列中的一个 \"M\",然后是两个数字。这些数字是放置当前棋手颜色棋子的空间的行和列,除非当前棋手没有合法棋步。如果当前棋手没有合法棋步,则首先将当前棋手换成另一棋手,而这步棋将是新的当前棋手的棋步。你可以认为这步棋是合法的。你应该记录棋盘上的变化,包括添加新棋子和改变所有括号内棋子的颜色。在下棋结束时,以 \"黑-xx 白-yy \"的格式打印棋盘上每种颜色的棋子数量,其中xx是棋盘上黑棋的数量,yy是棋盘上白棋的数量。在移动之后,当前的棋手将被改为没有移动的那一方。\n\n3. **退出当前游戏:**该命令将是行中第一栏的 \"Q\"。在这一点上。 使用与输入时相同的格式打印最终的棋盘配置。这就终止了当前游戏的输入。\u003c/p\u003e\n\n你可以假定这些命令在语法上是正确的。在不同游戏的输出之间放一个空行输出,而在输出的其他地方不要有空行。"}},{"title":"输入样例","value":{"format":"MD","content":"```plaintext\n2\n--------\n--------\n--------\n---WB---\n---BW---\n--------\n--------\n--------\nW\nL\nM35\nL\nQ\nWWWWB---\nWWWB----\nWWB-----\nWB------\n--------\n--------\n--------\n--------\nB\nL\nM25\nL\nQ\n```"}},{"title":"输出样例","value":{"format":"MD","content":"```plaintext\n(3,5) (4,6) (5,3) (6,4)\nBlack - 1 White - 4\n(3,4) (3,6) (5,6)\n--------\n--------\n----W---\n---WW---\n---BW---\n--------\n--------\n--------\n\nNo legal move.\nBlack - 3 White - 12\n(3,5)\nWWWWB---\nWWWWW---\nWWB-----\nWB------\n--------\n--------\n--------\n--------\n```"}}]}