这道题主要注意输入的问题,以及对周围搜索时的注意,要使用递归,多次调用,附上一组数据

11 20
*@*@*@@@**@*@**@@@**
***@*@*@*@*@****@**@
*@*@*@*@*@*@********
@*************@@**@*
@*@*@*@*@***********
*@*@*@*@*@*@*@*@****
**********@*@*@*****
******@*@*@*@*@*@***
**@*@***************
***********@*@*@*@**
*@*@*@******@*******

20

 #include<stdio.h>
char xx[][];
int dps(int i,int j)
{
if(xx[i-][j-]=='@')
{
xx[i-][j-]='#';
dps(i-,j-);
}
if(xx[i-][j]=='@')
{
xx[i-][j]='#';
dps(i-,j);
}
if(xx[i-][j+]=='@')
{
xx[i-][j+]='#';
dps(i-,j+);
}
if(xx[i][j-]=='@')
{
xx[i][j-]='#';
dps(i,j-);
}
if(xx[i][j+]=='@')
{
xx[i][j+]='#';
dps(i,j+);
}
if(xx[i+][j-]=='@')
{
xx[i+][j-]='#';
dps(i+,j-);
}
if(xx[i+][j]=='@')
{
xx[i+][j]='#';
dps(i+,j);
}
if(xx[i+][j+]=='@')
{
xx[i+][j+]='#';
dps(i+,j+);
}
}
int main()
{
int m,n,i,j,ans;
while()
{
scanf("%d%d",&m,&n);
if(m==) break;
for(i=;i<=;i++)
for(j=;j<=;j++)
xx[i][j]='*';
for(i=;i<=m;i++)
scanf("%s",xx[i]);
ans=;
for(i=;i<=m;i++)
for(j=;j<=n;j++)
{
if(xx[i][j]=='@')
{
xx[i][j]='#';
ans++;
dps(i,j);
}
/*else if(xx[i-1][j-1]!='#'&&xx[i-1][j]!='#'&&xx[i-1][j+1]!='#'&&xx[i][j-1]!='#'&&xx[i][j+1]!='#'&&xx[i+1][j-1]!='#'&&xx[i+1][j]!='#'&&xx[i+1][j+1]!='#')
{
ans++;
if(xx[i-1][j-1]=='@') xx[i-1][j-1]='#';
if(xx[i-1][j]=='@') xx[i-1][j]='#';
if(xx[i-1][j+1]=='@') xx[i-1][j+1]='#';
if(xx[i][j-1]=='@') xx[i][j-1]='#';
if(xx[i][j+1]=='@') xx[i][j+1]='#';
if(xx[i+1][j-1]=='@') xx[i+1][j-1]='#';
if(xx[i+1][j]=='@') xx[i+1][j]='#';
if(xx[i+1][j+1]=='@') xx[i+1][j+1]='#';
}
}*/ }
printf("%d\n",ans);
/* for(i=1;i<=m;i++)
{
for(j=0;j<=n;j++)
printf("%c",xx[i][j]);
printf("\n");
}*/
}
return ;
}

poj 1562的更多相关文章

  1. POJ 1562 && ZOJ 1709 Oil Deposits(简单DFS)

    题目链接 题意 : 问一个m×n的矩形中,有多少个pocket,如果两块油田相连(上下左右或者对角连着也算),就算一个pocket . 思路 : 写好8个方向搜就可以了,每次找的时候可以先把那个点直接 ...

  2. poj 1562 dfs

    http://poj.org/problem?id=1562 #include<iostream> using namespace std; ,m=,sum=; ][]; ][]={-,, ...

  3. POJ 1562 Oil Deposits (HDU 1241 ZOJ 1562) DFS

    现在,又可以和她没心没肺的开着玩笑,感觉真好. 思念,是一种后知后觉的痛. 她说,今后做好朋友吧,说这句话的时候都没感觉.. 我想我该恨我自己,肆无忌惮的把她带进我的梦,当成了梦的主角. 梦醒之后总是 ...

  4. poj 1562 Oil Deposits (广搜,简单)

    题目 简单的题目,只是测试案例的输入后面可能有空格,所以要注意一下输入方式. #define _CRT_SECURE_NO_WARNINGS //题目的案例输入n,m后面有些貌似有空格... #inc ...

  5. POJ 1562 Oil Deposits (并查集 OR DFS求联通块)

    Oil Deposits Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 14628   Accepted: 7972 Des ...

  6. POJ 1562 Oil Deposits

    转载请注明出处:http://blog.csdn.net/a1dark 大规模的图论切题之旅正式开始了.由于今天停了一天的电.所以晚上才开始切题.直到昨晚才把图论大概看了一遍.虽然网络流部分还是不怎么 ...

  7. [POJ] 1562 Oil Deposits (DFS)

    Oil Deposits Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 16655   Accepted: 8917 Des ...

  8. (简单) POJ 1562 Oil Deposits,BFS。

    Description The GeoSurvComp geologic survey company is responsible for detecting underground oil dep ...

  9. HDU - 1241 POJ - 1562 Oil Deposits DFS FloodFill漫水填充法求连通块问题

    Oil Deposits The GeoSurvComp geologic survey company is responsible for detecting underground oil de ...

随机推荐

  1. 分布式消息队列RocketMQ部署

    一.RocketMQ简介: RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 1.支持严格的消息顺序: 2.支持Topic与Queue两种模式: 3.亿级消息堆积能力: 4.比较友好 ...

  2. Effective Objective-C 2.0 — 第12条:理解消息转发机制

    11 条讲解了对象的消息传递机制 12条讲解对象在收到无法解读的消息之后会发生什么,就会启动“消息转发”(message forwarding)机制, 若对象无法响应某个选择子,则进入消息转发流程. ...

  3. Cucumber

    http://www.ibm.com/developerworks/library/a-automating-ria/ Cucumber is a testing framework that hel ...

  4. VisualStudio基本使用(2)-使用VS2013来编译C语言程序

    切换到C语言程序所有目录,执行cl test.c

  5. winScp上传文件时,如何过滤制定文件

    在用winScp上传文件时,有些文件不想上传到服务器上.怎么办呢? 比如我希望过滤.svn .git文件和目录怎么操作呢? 第一步:在菜单上选中选项,点击选项. 第二步,点击传输->编辑 第三步 ...

  6. zepto-selector.js简单分析

    zepto 的selector模块是对jquery扩充选择器(jquery-selector-extensions)的部分实现.比如这样的选择方法:$('div:first') 和 el.is(':v ...

  7. VTK初学一,a_Vertex图形点的绘制

    系统:Win8.1 QT版本:2.4.2,Mingw VTK版本:6.3 2. main.cpp #ifndef INITIAL_OPENGL #define INITIAL_OPENGL #incl ...

  8. java 1.7

    http://superuser.com/questions/740064/how-to-install-java-1-7-runtime-on-macos-10-9-mavericks sudo r ...

  9. 查看SQL Server日志 Part 1

    曾经有朋友问我数据被删除了,不借助第三方工具能不能查是什么时候发生的. SQL Server提供了一个undocumented的函数fn_dblog可以让我们查看活动的transaction log. ...

  10. HDU 5651 计算回文串个数问题(有重复的全排列、乘法逆元、费马小定理)

    原题: http://acm.hdu.edu.cn/showproblem.php?pid=5651 很容易看出来的是,如果一个字符串中,多于一个字母出现奇数次,则该字符串无法形成回文串,因为不能删减 ...