N*M的园子,雨后积起了水.八连通的积水背认为是连接在一起的.请求出园子里总共有多少水洼?

dfs(Depth-First  Search)  八个方向的简单搜索....

深度优先搜索从最开始的状态出发,遍历所有可以到达的状态.由此可以对所有的状态进行操作,或者列举出所有的状态.

 int N,M;
char field[][]; void dfs(int x,int y)
{
field[x][y]=='.'; //将现在所在位置替换
for(int dx=-; dx<=; dx++){
for(int dy=-; dy<=; dy++){ //向x方向移动dx,向y方向移动dy,移动的结果为(nx,ny)
int nx=x+dx;
int ny=y+dy;
if(<=nx && nx<N && <ny && ny<M && field[nx][ny]=='W') //判断(nx,ny)是不是在园子内,以及是否有积水
dfs(nx,ny);
}
}
} void solve(){
int ans=;
for(int i=; i<N; i++){
for(int j=; j<M; j++){
if(field[i][j]=='W'){ //从有W的地方开始dfs
dfs(i,j);
ans++;
}
}
}
printf("%d\n",ans);
}

最新文章

  1. bzoj1024搜索
  2. 搭建前端私有npm杂记
  3. java&amp;Protocol Buffers
  4. Git-rebase与merge小结
  5. OC - 26.CAAnimationGroup
  6. js打开新的链接下载文件
  7. 一个纯CSS DIV天气动画图标【转扒的】
  8. 用JavaScript判断横屏竖屏问题
  9. centos 5.8 x64Jetty的安装以及项目部署配置
  10. C++生产和使用的临时对象
  11. C语言5种存储区域
  12. Windows MDI(Multiple-Document Interface)
  13. c# 利用IEqualityComparer接口去除DataTable重复数据
  14. sencha touch 学习汇总(转)
  15. eclipse添加mybatis插件
  16. 1.2.4 Excel快速建立n个文件夹
  17. linux bin &amp; sbin different
  18. ActiveMQ整合spring、同步索引库
  19. JQuery $.each遍历JSON字符串报Uncaught TypeError:Cannot use &#39;in&#39; operator to search for
  20. jsp jsp属性范围

热门文章

  1. Win7 IIS配置 applicationHost.config 错误:无法识别的特性“setProfileEnvironment” 解决方法
  2. Java Swing 树状组件JTree的使用方法(转)
  3. Leetcode:minimum_depth_of_binary_tree解决问题的方法
  4. [勘探开发]成绩,全栈开发,健全&amp;amp;借贷
  5. RESTful API Design With NodeJS &amp; Restify
  6. NTVS:把Visual Studio变成Node.js IDE 的工具
  7. thinkphp达到UploadFile.class.php图片上传功能
  8. Nagios显示器mysql定从库: libmysqlclient.so.18: cannot open shared object file: No such
  9. JProgressBar的一个框架
  10. STM32 水晶不摇