[CZOJ 一周一测 R20 D] 国际象棋
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
给定一张国际象棋棋盘,如图所示(如果考场不能上网导致无法查看棋盘的话,下发文件中也提供了图片。)
在国际象棋中,我们有 颗棋子,分别有 颗黑棋和 颗白棋。对于每种颜色的棋子,分别有 个兵(使用 M
表示), 个城堡(使用 C
表示), 个骑士(使用 H
表示), 个主教(使用 B
表示),一个后(使用 Q
表示)和一个王(使用 K
表示)。对于黑色,我们称为 B
表示;对于白色,我们使用 W
表示。对于一颗棋子,我们使用一个字符串 表示,其中 表示字符串拼接操作, 为棋子的种类, 为棋子的颜色。
我们将国际象棋的每个格子使用有序对 表示,其中 为大写字母 A
至 H
, 为 的整数,表示上述棋盘的一个格子。
对于每种棋子有如下的走法:
- 兵:直线行走,每步只能走一格,不能后退。可以吃斜前方的棋子,但是不能吃正前面的棋子。不可以跨越棋子!
- 城堡:直线行走,可以走任意多步,不可以跨过棋子
- 骑士:先向一个方向走两格,旋转 再走一步。可以跨过棋子。
- 主教:只可斜走,可以走任何多步,但是不可以跨越棋子。
- 后:可以向任何方向行走任意步,但是不可以转弯,不可以跨过棋子。
- 王:可以向任何方向行走一步。
注意,本题中棋子的走法可能与现实不同。
我们给出初始棋盘的样式,并给出你 步操作,每一步给定两个格子 ,表示你需要从将格子 上的棋子移动到格子 ,你需要报告操作是否合法,若合法则执行操作,否则跳过操作。所有操作结束后,你还需要输出棋盘上的布局。
一个操作合法,当且仅当 ,并且 上存在棋子且 上的棋子可以移到 ,并且 不可以存在自己的棋子(如果存在对方的棋子,则吃子)。
注意,本题中初始棋局为图示棋局,但是给出的棋局并不是初始棋局。
输入格式
第一行输出一个正整数 。
接下来 行,每行 个字符串,中间使用空格隔开,保证是棋子或 .
的一种。其中 .
表示这个位置没有任何棋子。
接下来 行,每行的格式如 (x,y) (a,b)
表示操作为将 上的棋子移至 。
输出格式
首先输出 行字符串,第 行的字符串表示第 个操作是否合法。具体地,如果第 个操作合法,请输出 Done.
,否则请输出 Opps, it doesn't works.
。
最后请输出一个 的字符串矩阵,表示最后的棋盘。具体地,你需要将棋盘从上到下,从左到右输出,同行的格子之间的数据使用空格隔开。
样例
# 样例输入 1
1
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . BB . .
. . . . . . . .
. . . BW . . . .
. . . . . . . .
. . . . . . . .
(D,3) (F,6)
# 样例输出 1
Opps, it doesn't works.
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . BB . .
. . . . . . . .
. . . BW . . . .
. . . . . . . .
. . . . . . . .
样例输入 2
6
KB MW MB . . . . .
HW . QB . . QW . BB
. CB BW KW MW . BB HB
MB . . MW HB . CB .
CW MB MB . MB MB . .
MB . . . CW MW HW .
MB . BW MW . . . MW
. . . . . . . .
(E,6) (E,7)
(E,5) (C,6)
(A,2) (A,1)
(F,3) (E,4)
(C,6) (A,7)
(B,6) (D,6)
样例输出 2
Done.
Done.
Done.
Done.
Done.
Done.
KB MW MB . . . . .
HB . QB . MW QW . BB
. . . CB . . BB HB
MB . . MW . . CB .
CW MB MB . MW MB . .
MB . . . CW . HW .
. . BW MW . . . MW
MB . . . . . . .
由于此题样例较多,不再提供大样例。
数据范围
对于 的数据,保证 。
对于 的数据,保证 。
对于 的数据,保证 。
保证所有格子是合法的,棋盘的棋子个数是合法的,棋盘上的棋子是合法的。
[CZR-020] CZOJ Weekly Exercise Round 20——GZA Round
- 状态
- 已结束
- 规则
- IOI
- 题目
- 6
- 开始于
- 2025-3-8 17:00
- 结束于
- 2025-3-8 22:00
- 持续时间
- 5 小时
- 主持人
- 参赛人数
- 12