POJ2386---Lake Counting
来源:互联网 发布:淘宝批量投放模块 编辑:程序博客网 时间:2024/06/01 07:11
poj2386
算了不复制题目了。。。
一道深搜题,然后我又是用的宽搜,因为一本通说用宽搜(好像深搜更简单),好不容易1A,可能因为题比较水。。。毕竟题就是关于水的。。。
#include<iostream>#include<cstdio>#define MAXN 105using namespace std;int n,m;int w[MAXN][MAXN];bool vis[MAXN][MAXN];int dx[8]= {0,0,1,-1,-1,1,1,-1};int dy[8]= {1,-1,0,0,-1,-1,1,1};int cnt;void bfs(int a,int b) { if(vis[a][b]||!w[a][b])return; int hd=0,tl=1;cnt++; vis[a][b]=1; int x[MAXN*MAXN],y[MAXN*MAXN]; x[++hd]=a,y[hd]=b; while(hd<=tl) { for(int i=0; i<8; i++) { if(x[hd]+dx[i]<=n&&x[hd]+dx[i]>0&&y[hd]+dy[i]>0&&y[hd]+dy[i]<=m&&!vis[x[hd]+dx[i]][y[hd]+dy[i]]&&w[x[hd]+dx[i]][y[hd]+dy[i]]) { vis[x[hd]+dx[i]][y[hd]+dy[i]]=1; x[++tl]=x[hd]+dx[i]; y[tl]=y[hd]+dy[i]; } } hd++; }}int main() { scanf("%d%d ",&n,&m); for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { char ch=getchar(); if(ch=='W')w[i][j]=1;// scanf("%c",&w[i][j]); }getchar(); } for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { bfs(i,j); } }cout<<cnt;}
好不容易会用点队列结果今天老师讲了一道新题立刻GG。。。。我比题还水
阅读全文
0 0
- POJ2386 Lake Counting
- POJ2386:Lake Counting(DFS)
- poj2386 Lake Counting DFS
- poj2386 Lake Counting
- poj2386 Lake Counting
- POJ2386 Lake Counting(DFS)
- poj2386 Lake Counting
- POJ2386 Lake Counting 【DFS】
- Lake Counting--poj2386
- poj2386 Lake Counting
- POJ2386 Lake Counting
- POJ2386-Lake Counting
- POJ2386 Lake Counting
- POJ2386 Lake Counting
- POJ2386 Lake Counting (dfs)
- POJ2386 Lake Counting(dfs)
- POJ2386.Lake Counting
- poj2386 Lake Counting【DFS】
- ssm框架创建简单的DVD管理系统(五)页面的实现同时完成controller层
- Java线程池ThreadPoolExecutor使用和分析(一)
- VMware vSphere Web Services SDK编程指南(十二 虚拟机配置)- 12.3 配置虚拟机
- 从地图类型切换控件谈JS代码优化
- C++多态 、 数据抽象、数据封装、接口(抽象类)
- POJ2386---Lake Counting
- 欢迎使用CSDN-markdown编辑器
- js判断客户端是pc端还是移动端
- Android 自己的XMPP IM 设计客户端设计
- .NET MVC 通过权限控制文件的下载
- struts2_day01_17_案例-客户列表
- OpenGL高级特性之利用Image内存模型&计算着色器&原子操作实现(直方图模型)通用计算
- ProGuard代码混淆技术详解
- 阿里规约插件在eclipse下不能安装