SP9971 ACHESS - Adventurous Chess Masters
题目描述
在冒险象棋大师的世界里,一切都与我们所熟知的不同。这里没有街道和建筑物,取而代之的是一个巨大的棋盘和各种棋子。如果一个棋盘格上至少有一个棋子,那么这个格子就算是被覆盖。你需要通过用棋子覆盖棋盘上的特殊魔法格来揭示这个世界的秘密,而你迫不及待地想要去探索。
在每个回合,你可以根据以下规则移动棋盘上的一个棋子:
- **国王**可以向任意方向移动一格。
- **皇后**可以沿着行、列或者对角线任意方向移动任意多格。
- **车**可以沿行或列(前后、左右)移动任意多格。
- **象**可以沿对角线方向移动任意多格。
- **马**可以按照“L”形移动:即先在某一方向移动两格,然后以垂直方向移动一格。
- **兵**只能向前或向后移动一格(不同于普通的国际象棋规则)。
需要注意的是,在这个世界中,一个格子可以被多个棋子同时占据,并且棋子可以穿越被占据的格子。为了揭开世界的秘密,你需要在最少步数内让尽可能多的魔法格子被覆盖。
输入格式
输入的第一行为一个整数 $T$,表示有多少组测试用例。接下来有 $T$ 组测试用例。每组测试用例的第一行包含两个整数 $P$ 和 $L$,分别表示棋盘上的棋子数量和魔法格子的数量。接下来的 $P$ 行中,每行包含两个整数 $x$ 和 $y$,表示棋子的位置坐标($1 \leq x, y \leq 8$)。其后的 $L$ 行,每行也包含两个整数 $x$ 和 $y$,表示魔法格子的位置坐标($1 \leq x, y \leq 8$)。
输出格式
对每个测试用例,依次输出一行,格式为:“**Case K:** Secret reveals after moving H pieces with minimum number of moves M.” 其中 $K$ 表示测试用例的编号,$H$ 表示需要移动的棋子数量,$M$ 表示所用的总步数。请参照样例了解输出格式。
说明/提示
- $1 \le T \le 100$
- $1 \le P, L \le 8$
- $1 \le x, y \le 8$
## 样例输入
```
2
1 1
1 1 pawn
8 1
3 5
2 8 king
2 8 queen
7 5 bishop
1 1
2 2
3 6
6 3
4 4
```
## 样例输出
```
Case 1: Secret reveals after moving 1 pieces with minimum number of moves 7.
Case 2: Secret reveals after moving 3 pieces with minimum number of moves 5.
```
**本翻译由 AI 自动生成**