Problem5155--陷阱(Trap)

5155: 陷阱(Trap)

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

老鼠Jerry已经快到它的本命年了。做为一只中国的老鼠,Jerry知道本命年是凶年。为了避免发生危险,Jerry时刻注意着身边的情况。Jerry家的地面上有一块n*m的方格地,每个方格里种着一颗蔬菜(蔬菜用字符#’表示)。这天Jerry想去地里摘蔬菜,可他发现方格地里有些蔬菜已经被人布置成了陷阱!每个陷阱都设有一个机关,与这个机关的相邻的格子(上下左右)上各有一个爪子,所以一个完整的陷阱刚好占5个格子(如下图)。

爪子 

爪子 
机关 
爪子 

爪子 

图1:陷阱形状
当老鼠正好踩到陷阱的机关,陷阱就会被触发,上下左右四个方向的爪子就会快速合拢抓住老鼠。Jerry通过观察,把蔬菜地里可能是陷阱任何一部分的格子都做了标识’T’,如果这些标识能组成一个完整的陷阱形状,Jerry就能判断出哪些格子是陷阱的机关会触发陷阱,并尽量避开。
做为Jerry的好朋友,Jerry想请你帮他找一找这块蔬菜地里有几个陷进?(只要机关所在格子不一样,就被认为不是同一个陷阱。不同陷阱的爪子允许重叠。)

Input

第一行:两个整数n和m,中间用空格隔开(3<=n,m<=100)。
接下来是一个n行m列,由字符’#’和’T’组成的矩阵。

Output

输出一行,一个整数(陷阱的个数)。

Sample 1 Input

3  5
# # T T #
# T T T T
# # T T #

Sample 1 Output

2

HINT

【样例说明】
样例1中存在两个陷阱:

第一个:

#

#

T

T

#

#

T

T

T

T

#

#

T

T

#

第二个:

#

#

T

T

#

#

T

T

T

T

#

#

T

T

#

【样例2】
输入

5 5

T T T # #

# T # T #

T T T T #

# T T T #

# # T # #

输出

2

说明
样例2中存在两个陷阱:

第一个:

T

T

T

#

#

#

T

#

T

#

T

T

T

T

#

#

T

T

T

#

#

#

T

#

#

第二个:

T

T

T

#

#

#

T

#

T

#

T

T

T

T

#

#

T

T

T

#

#

#

T

#

#

【数据范围】
100% 的数据,保证 3 <= n, m <= 100。

Source/Category