#749. Target Practice
Target Practice
有一个大小为 的靶子,由五个同心“环”组成(如图所示)。每一环有不同的得分:最外层环记 分,往内一层记 分,依次类推,最中心的环记 分。
Vlad 向靶子射出了若干支箭。请你帮助他计算总共获得了多少分。
靶子用一个 的字符网格表示:
- 字符
X表示该格有一支箭; - 字符
.表示该格没有箭。
对于坐标为第 行第 列(从 开始计数)的格子,它所在的环由它到四条边的最小距离决定: 令
则该格得分为 (因此 的取值为 到 )。
每个 X 的得分等于其所在格子的得分,总分为所有 X 得分之和。
输入格式
第一行一个整数 (),表示测试用例数量。
接下来每个测试用例包含 行,每行包含 个字符(仅由 X 与 . 组成),表示靶子的状态。
输出格式
对每个测试用例,输出一行一个整数,表示该测试用例中所有箭的总得分。
样例
输入
4
X.........
..........
.......X..
.....X....
......X...
..........
.........X
..X.......
..........
.........X
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
....X.....
..........
..........
..........
..........
..........
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
输出
17
0
5
220
说明
- 靶子共有 个环,最外层为 分,最中心为 分。
- 计算格子得分时使用公式 ( 为从 开始的行列编号)。