/ Vijos / 题库 /

俘获人质

俘获人质

时间限制:1秒  内存限制:256M


【题目描述】

  用字符矩阵来表示一个 \(8 * 8\) 的棋盘,'.'表示是空格,'P'表示人质,'K'表示骑士。

  每一步,骑士可以移动到他周围的8个方格中的任意一格。如果你移动到的格子中有人质(即'P'),你将俘获他。但不能移出棋盘或当前是'K'的格子中。

  请问最少要移动多少步骑士才能俘获所有的人质。

【输入格式】

  第一行一个整数 \(T(<=5)\),表示有多少个棋盘。即多组测试数据。
  每一组有 8 行,每行 8 个字符。字符只有'.',大写'P',大写'K'三种字符。

【输出格式】

  有 \(T\) 行,每行只一个整数,相应棋盘俘获全部人质所需要的最少步数。

【输入输出样例】

 Input

3
.PPPPKP.
........
........
........
........
........
........
........
P......P
........
........
........
...KK...
........
........
P......P
.....P.P
..K....P
....K...
..PP...P
...K..KK
........
K.......
KP.K....

 Output

6
20
9

【数据限制】

  对于 \(100\%\) 的数据,'P'和'K'的个数范围都在 \([1,10]\)。

【来源】

  Mr.he

信息

ID
3221
难度
9
分类
动态规划 | 状态压缩DP 点击显示
标签
(无)
递交数
1
已通过
1
通过率
100%
上传者