2568. 库克船长的宝藏

1000ms 512MB 简单 深度优先搜索 DFS
题目描述
### 题目描述 库克船长在无名岛上埋藏了一些宝藏,找到它们需要路过一片沼泽地,rain 在库克船长的笔记里面发现了通过沼泽的方法,沼泽地里铺满了石头,都是库克船长早就铺好的,石头都是蓝色或者绿色,绿色的石头铺成的路是可以走的,蓝色的石头踩上会被沼泽吞没。rain 一开始站在一块绿色的石头上,并且 rain 从一块石头可以向上下左右四个方向移动到其他的石头上,但是他不能移动到蓝色的石头上,只能移动到绿色石头上。 请你编程计算 rain 可以走到的绿色石头最多有多少块。
输入格式
输入包含多组测试数据。 每组输入首先是两个正整数 W 和 H,分别表示石头的列数和行数($1 \le W, H \le 20$)。 接下来 H 行,每行包含 W 个字符,字符含义如下: - `.` 表示绿石头; - `#` 表示蓝石头; - `@` 表示 rain 一开始站的位置。此位置是一块绿石头,并且这个字符在每组输入中仅出现一次。 当 $W=0$ 且 $H=0$ 时,输入结束。
输出格式
对于每组输入,输出 rain 可以走到的绿色石头最多有多少块,包括 rain 最开始站的那块绿色石头。
样例 1
输入 (Input)

                    
输出 (Output)

                    
$1 \le W, H \le 20$
自测终端 stdin → stdout
› 输入 stdin
CtrlShiftEnter
‹ 输出 stdout

                
错误 stderr

                
CtrlEnter提交
自动保存已开启
操作成功
wzs_oj@kernel:~ — wzs-sh
guest@wzsoj:~$
刷新页面 F5
复制 Ctrl+C
粘贴 Ctrl+V
搜索题目
训练中心
站点公告
今日神谕
CSP 倒计时
排行榜
我的提交
Esc 关闭 Enter 跳转 支持模糊匹配数字