Home => ProblemSet => 5.1-09:红黑块
Problem1307--5.1-09:红黑块

1307: 5.1-09:红黑块

Time Limit: 1 Sec  Memory Limit: 128 MB  Submit: 6  Solved: 5
[ Submit ] [ Status ] [ Creator: ][ 参考程序 ]

Description

有一个长方形的房间,上面铺着正方形的瓷砖。每个瓷砖都是红色或黑色。一个人站在一块黑色的瓷砖上。从一块瓷砖开始,他可以移动到四块相邻的瓷砖中的一块。但他不能在红砖上移动,他只能在黑色瓷砖上移动。

写一个程序来计算他通过重复上述动作所能达到的黑色瓷砖的数量。

Input

输入由多个数据集组成。数据集以一行包含两个正整数W和H开始;W和H分别是x和y方向上的分片数。W和H不超过22。
数据集中还有H行,每行包含W个字符。每个字符表示平铺的颜色,如下所示。
'.' - 黑色块
'#' - 红色块
'@' - 人所站的位置

Output

一个整数,表示人可以到达的黑色块数(包括自己所站的位置)

Sample Input Copy

11 9
.#.........
.#.#######.
.#.#.....#.
.#.#.###.#.
.#.#..@#.#.
.#.#####.#.
.#.......#.
.#########.
...........

Sample Output Copy

59

Source/Category