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 ...
随机推荐
- HashSet 读后感
HashSet实现Set,是一个不能重复元素的集合,内部使用HashMap实现.因此具有HashMap的特性,如不保证元素插入的顺序,线程不安全,允许null.HashSet的元素就是内部HashMa ...
- sicily 1022. Train Problem
本题主要是出栈入栈顺序的问题 Home Problems My Status Standing <-> 1022. Train Problem Total: 2 ...
- 关于C++string的长度陷阱
std::string s = ...; ..... assert(s.length() == strlen(s.c_str())); 一般认为这段代码是不会断言失败的,但是实际上这段代码可能是会断言 ...
- multiple backgrounds 多重背景
语法缩写如下: background : [background-color] | [background-image] | [background-position][/background-siz ...
- ECMAScript整理笔记(持续更新....)
参考文献: ECMAScript Array:http://www.jimmycuadra.com/posts/ecmascript-5-array-methods ECMAScript5兼容展示大全 ...
- 层叠水平(stacking level)
运用上图的逻辑,上面的题目就迎刃而解,inline-blcok 的 stacking level 比之 float 要高,所以无论 DOM 的先后顺序都堆叠在上面. 不过上面图示的说法有一些不准确,按 ...
- string和json转换的简单应用
import com.alibaba.fastjson.JSON; String strjson = request.getParameter("param"); //url-js ...
- Redis源码研究--跳表
-------------6月29日-------------------- 简单看了下跳表这一数据结构,理解起来很真实,效率可以和红黑树相比.我就喜欢这样的. typedef struct zski ...
- php中session_start()相关问题分析与解决办法
介绍下,在php中使用session时遇到的一些问题,与相关解决方法.1.错误提示Warning: Cannot send session cookie - headers already sentW ...
- Oracle 表的连接方式(2)-----HASH JOIN的基本机制3
HASH JOIN的模式 hash join有三种工作模式,分别是optimal模式,onepass模式和multipass模式,分别在v$sysstat里面有对应的统计信息: SQL> sel ...