Hdu1312解析_搜索技术
题目
有一个长方形的房间,铺着方砖。每块瓷砖都是红色或黑色。一个人站在一块黑色的瓷砖上。从一块瓷砖,他可以移动到四个相邻的瓷砖之一。但是他不能在红色瓷砖上移动,只能在黑色瓷砖上移动。
编写一个程序来计算他通过重复上述动作可以达到的黑色瓷砖的数量。
输入
输入由多个数据集组成。一个数据集以一行包含两个正整数 W 和 H 开始;W 和 H 分别是 x 和 y 方向上的瓦片数量。W和H不超过20
,数据集中还有H行,每行包含W个字符。每个字符代表瓷砖的颜色,如下所示。
‘.’ - 黑色瓷砖
‘#’ - 红色瓷砖
‘@’ - 黑色瓷砖上的男人(在数据集中只出现一次)
输出
对于每个数据集,您的程序应该输出一行,其中包含他可以从初始图块(包括其自身)到达的图块数量。
样本输入
6 9
…#.
…#
…
…
…
…
…
#@…#
.#…#。
11 9
.#…
.#.#######。
.#.#…#.
.#.#.###.#。
.#.#…@#.#。
.#.######.#。
.#…#.
.#########。
…………
11 6
…#…#…#…
…#…#…#…
…#…#…###
…#…#…#@。
…#…#…#…
…#…#…#…
7 7
…#.#…
…#.#…