#g4016. [GESP4级模拟题]马步攻击2

[GESP4级模拟题]马步攻击2

题目描述

在一个 n×mn \times m 的棋盘上,H 表示红马,P 表示黑方棋子,. 表示空位。

在中国象棋中,马走"日"字(2×12 \times 1 的 L 形),但存在蹩马腿规则:马向某个方向移动时,如果该方向第一步的正交位置上(即"马腿"处)有棋子,则不能往这个方向跳。

例如,马从 (r,c)(r,c) 要跳到 (r2,c+1)(r-2, c+1),需要检查 (r1,c)(r-1, c) 是否为空。如果有棋子,则马腿被别住,无法向这个方向跳。

请计算:所有红马只走一步的情况下,最多能吃掉多少个黑方棋子。同一个黑方棋子无论被几匹马盯上,只算一个。

输入格式

第一行两个整数 n,mn, m

接下来 nn 行,每行一个长度为 mm 的字符串,由 HP. 组成。

输出格式

一个整数,表示能被吃掉的黑方棋子数量。

样例输入

3 3
..H
...
.P.

样例输出

1

样例解释

红马在 (0,2)(0,2),黑棋在 (2,1)(2,1),马步 (+2,1)(+2,-1) 合法且腿位置 (1,2)(1,2) 为空 → 可以吃掉。

数据范围

1n,m201 \le n, m \le 20