QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 512 MB Total points: 110

#13429. 动物园

Statistics

在2010年一个寒冷的圣诞夜,萨格勒布(Zagreb)白雪皑皑。Zdravko 决定离开他的城堡,穿过马路,在马克西米尔公园(Maksimir park)散步。不幸的是,这个诗情画意的冬夜被潜伏在附近灌木丛中的一只怪物打破了。怪物跳到 Zdravko 面前,但 Zdravko 发出了一声震耳欲聋的怒吼,把怪物吓跑了。但他不知道的是,附近动物园里的一群动物也被这声怒吼惊吓到了。更具体地说,一群老虎和公牛被吵得无法入睡,于是它们决定逃离动物园,寻找一个安静的地方睡觉。

在逃跑过程中,动物们必须穿过一个被划分为 $R \times C$ 个单位正方形的矩形区域。动物们必须从左上角进入该区域,并从右下角离开该区域。为了尽可能安静地逃跑,动物们会一个接一个地穿过这个区域,沿着四个方向(上、下、左、右)的任意路径行走。换句话说,每只动物在逃跑时并不一定会沿着最短路径行走,并且可能会多次踩在同一个单位正方形上(包括入口和出口)。由于地面覆盖着雪,动物在踩入单位正方形时会留下脚印。如果准备踩入的正方形中已经存在脚印,则该动物会清除之前的脚印并留下自己的新脚印。

你的任务是根据在上述矩形区域中留下的脚印,确定从马克西米尔动物园逃跑的动物的最少数量。

输入格式

第一行包含两个整数 $R$ 和 $C$,含义如题面所述。

接下来的 $R$ 行,每行包含 $C$ 个字符,表示题面中所述的矩形区域。字符 T 表示老虎的脚印,字符 B 表示公牛的脚印,字符 * 表示未被踩过的雪。

你可以假设输入数据满足:至少有一只动物进入了矩形区域,并且每只进入该区域的动物都按照题面中的规则离开了该区域。

输出格式

输出逃离动物园的动物的最少数量。

子任务

子任务 分值 数据范围
1 45 $2 \le R, C \le 100$
2 65 $2 \le R, C \le 1000$

样例

输入样例 1

4 4
TT*T
*TTT
***T
***T

输出样例 1

1

输入样例 2

3 5
TTBB*
*T*B*
*TTTT

输出样例 2

2

输入样例 3

7 5
BT***
BTBBB
BTTTB
BBT*B
BBT*B
BBT**
*BBBB

输出样例 3

3

说明

第二个样例的解释:

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.