/*
利用宽搜将每块积水填满,添加一个计数器,记下填满几块积水即答案
*/
#include<iostream>
using namespace std;
char a[][];
int r[][] = {{-,-},{-,},{,-},{-,},{,-},{,},{,},{,}};
int n,m;
void dfs(int x,int y)
{
//cout << x << " " << y << endl;
if(x < || x >= n) return ;
if(y < || y >= m) return ;
if(a[x][y] != 'W') return ;
a[x][y] = '.';
for(int i=; i<; ++i)
dfs(x+r[i][],y+r[i][]);
}
int main()
{
while(cin >> n >> m)
{
int ans = ;
for(int i=; i<n; ++i)
cin >> a[i];
for(int i=; i<n; ++i)
for(int j=; j<m; ++j)
if(a[i][j] == 'W')
{
++ans;
dfs(i,j);
}
cout << ans << endl;
}
return ;
}

最新文章

  1. mvc mvp mvvm模式的区别
  2. [c++] Operator overloading
  3. 淘宝web前端开发岗面试经历及感悟
  4. Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法
  5. selenium常见的疑问和问题
  6. 观察者模式(Observer)
  7. Qt信号和槽的个人总结
  8. Counting Haybales
  9. expect ------提供用户名和密码的SSH自动登录脚本
  10. Spark Streaming实时写入数据到HBase
  11. angular 实现自定义样式下拉菜单
  12. 初学JVM
  13. 新增加的HTTP状态码 -- 103
  14. Unity3D判断触摸方向
  15. FileOutputStream&amp;FileInputStream&amp;异常的使用
  16. mysql [索引优化] -- in or替换为union all
  17. .Net 站点跨域问题及解决方法
  18. Java初始化顺序(静态变量、静态初始化块、实例变量、实例初始化块、构造方法)
  19. BZOJ 2194 快速傅立叶变换之二 | FFT
  20. 解决Alt+/不弹出提示的问题

热门文章

  1. C++ Primer 笔记——类成员指针
  2. idea的操作
  3. python 在WINDOS虚拟环境部署
  4. pycaffe训练的完整组件示例
  5. asp.net core MVC 控制器,接收参数,数据绑定
  6. SpringMVC - 1.快速入门
  7. Android Studio运行项目报错:Error:null value in entry: annotationProcessorOutputFolder=null的解决方案
  8. Linux系统监控命令及定位Java线程
  9. 【BZOJ3697】采药人的路径
  10. Elasticsearch - Scroll