poj 1562 Oil Deposits (广搜,简单)
简单的题目,只是测试案例的输入后面可能有空格,所以要注意一下输入方式。
#define _CRT_SECURE_NO_WARNINGS
//题目的案例输入n,m后面有些貌似有空格。。。
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<queue>
using namespace std;
#define MAXN 110
//bool vis[MAXN][MAXN];
char map[MAXN][MAXN];
int n,m,sum;
int xx[]={,,,,,-,-,-};
int yy[]={,-,,,-,,,-};
struct tt
{
int x,y;
}; int bfs()
{
int ans=;
tt front,rear,temp;
queue<tt>q;
while(!q.empty())
q.pop();
// memset(vis,false,sizeof(vis));
for(int j=;j<n;j++)
{
for(int k=;k<m;k++)
{
if(map[j][k]=='@')
{
ans++;
sum--;
map[j][k]='*';
if(sum==)return ans;
front.x=j,front.y=k;
q.push(front);
while(!q.empty())
{
temp=q.front();
q.pop();
for(int i=;i<;i++)
{
rear.x=temp.x+xx[i];
rear.y=temp.y+yy[i];
if(rear.x>=&&rear.x<n&&rear.y>=&&rear.y<m&&map[rear.x][rear.y]=='@')
{
map[rear.x][rear.y]='*';
q.push(rear);
sum--;
if(sum==)return ans;
}
}
}
}
}
}
return ans;
} int main()
{
int i,j;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n==&&m==)
break;
sum=;
for(i=;i<n;i++)
{
scanf("%s",map[i]);//因为输入后貌似有时有空格,所以这么输入好了
for(j=;j<m;j++)
{
if(map[i][j]=='@')
sum++;
} }
printf("%d\n",bfs());
}
return ;
}
poj 1562 Oil Deposits (广搜,简单)的更多相关文章
- (简单) POJ 1562 Oil Deposits,BFS。
Description The GeoSurvComp geologic survey company is responsible for detecting underground oil dep ...
- POJ 1562 Oil Deposits (并查集 OR DFS求联通块)
Oil Deposits Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 14628 Accepted: 7972 Des ...
- [POJ] 1562 Oil Deposits (DFS)
Oil Deposits Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 16655 Accepted: 8917 Des ...
- HDU - 1241 POJ - 1562 Oil Deposits DFS FloodFill漫水填充法求连通块问题
Oil Deposits The GeoSurvComp geologic survey company is responsible for detecting underground oil de ...
- POJ 1562 Oil Deposits (HDU 1241 ZOJ 1562) DFS
现在,又可以和她没心没肺的开着玩笑,感觉真好. 思念,是一种后知后觉的痛. 她说,今后做好朋友吧,说这句话的时候都没感觉.. 我想我该恨我自己,肆无忌惮的把她带进我的梦,当成了梦的主角. 梦醒之后总是 ...
- POJ 1562 Oil Deposits
转载请注明出处:http://blog.csdn.net/a1dark 大规模的图论切题之旅正式开始了.由于今天停了一天的电.所以晚上才开始切题.直到昨晚才把图论大概看了一遍.虽然网络流部分还是不怎么 ...
- HDU 1562 Oil Deposits
题目: The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. G ...
- poj1562 Oil Deposits 深搜模板题
题目描述: Description The GeoSurvComp geologic survey company is responsible for detecting underground o ...
- poj 3414 Pots(广搜BFS+路径输出)
转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents 题目链接:id=3414">http://poj.org/probl ...
随机推荐
- 洛谷 P2670 扫雷游戏==Codevs 5129 扫雷游戏
题目描述 扫雷游戏是一款十分经典的单机小游戏.在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格).玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有 ...
- 【学习】Windows PE文件学习(一:导出表)
今天做了一个读取PE文件导出表的小程序,用来学习. 参考了<Windows PE权威指南>一书. 首先, PE文件的全称是Portable Executable,可移植的可执行的文件,常见 ...
- C语言 电梯函数
#include <stdio.h> #include <time.h> #include <stdlib.h> void test(){//汉字输出 printf ...
- C#各种常用开源框架-支持开源!分享!
下面罗列了开发及学习过程中所涉及的开源类库的列表! AForge.NET Accord.NET NAudio nVLC Speex C# WebServer FFmpeg FFmpeg.NET Flo ...
- Gulp vs Grunt 前端构建工具对比
Gulp vs Grunt 前端工程的构建工具对比 1. Grunt -> Gulp 早些年提到构建工具,难免会让人联想到历史比较悠久的Make,Ant,以及后来为了更方便的构建结构类似的Jav ...
- laravel--has方法--查看关联关系
has()方法可以用来查询是否有关联关系的一个东西,一般其他的has方法 就是判断这个里面有没有值 $packageOrders = Company::has('packages')->get( ...
- PHP获取时间日期的多种方法
分享下PHP获取时间日期的多种方法. <?php echo "今天:".date("Y-m-d")."<br>"; ...
- js获取location.href的参数实例代码
本文为大家介绍下js如何获取location.href的参数,需要注意的是去掉参数里最开头的?号,具体实现如下,有需要的朋友可以参考下,希望对大家有所帮助 window.location.search ...
- Sandcastle是什么
如果你的项目是.net开发,同时需要生成HTML的方法成员文档时,哪么就不得不拿出Sandcastle 因为Sandcastle是微软开发,并开源的文档生成工具; 这种生成进度等待的感觉很爽! 在这里 ...
- EF-Code First 入门
本文程序基于VS2015.EF6.1,本文不做过多深入讨论,只是个入门. EF 就是微软的 EntityFramework,主要分为 DB First,Model First,Code First.之 ...