油田 (Oil Deposits UVA - 572)

题目描述:

原题:https://vjudge.net/problem/UVA-572

 

 题目思路:

1.图的DFS遍历

2.二重循环找到相邻的八个格子

AC代码:

 1 #include <iostream>
 2 #include <cstring> 
 3 using namespace std;
 4 
 5 const int maxn = 105 ;
 6 char pic[maxn][maxn] ; 
 7 int tag[maxn][maxn] ; //已经遍历过的标志 
 8 int m, n;
 9 
10 void dfs(int r,int c,int cnt)
11 {
12     if(r < 0 || r >= m || c < 0 || c >= n) return ;//排除出界的格子
13     if(tag[r][c] > 0|| pic[r][c] != '@') return ; //已遍历过或不是@
14     tag[r][c] = cnt ; //标记 
15     for(int i = -1;i <= 1;i ++)
16         for(int j = -1;j <= 1;j ++)
17             if(i != 0 || j != 0) dfs(r+i,c+j,cnt);     
18 }
19 int main(int argc, char *argv[])
20 {
21     while(scanf("%d%d",&m,&n) == 2 && m && n)
22     {
23         for(int i = 0;i < m; i++) scanf("%s",pic[i]) ;
24         memset(tag,0,sizeof(tag)) ;
25         int cnt = 0; //连通块个数 
26         for(int i = 0;i < m; i++)
27             for(int j = 0;j < n;j++)
28                 if(tag[i][j] == 0 && pic[i][j] == '@') dfs(i,j,++cnt) ;    
29         cout << cnt << endl;
30     }    
31     return 0;
32 }

 

转载于:https://www.cnblogs.com/secoding/p/9539494.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/413451.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序获取当前时间戳、获取当前时间、时间戳加减

题外话&#xff1a; 《Pi Network 免费挖矿国外热门项目 一个π币大约值3元到10元》相信过去BTC的人&#xff0c;信不信未来的PI&#xff0c;了解一下&#xff0c;唯一一个高度与之持平的项目 //获取当前时间戳 var timestamp Date.parse(new Date()); timestamp timesta…

[css] 有哪些标签是不支持伪元素的?

[css] 有哪些标签是不支持伪元素的&#xff1f; 首先我们要知道伪元素有哪些&#xff1a; ::after ::before ::first-letter ::fist-line &#xff08;单双冒号皆可&#xff09; ::selection ::backdrop &#xff08;仅双冒号&#xff09; 伪元素虽然强大&#xff0c;但是还是…

hadoop 常用hdfs命令

转载于:https://www.cnblogs.com/mahailuo/p/9542654.html

PHP API接口GETPOST请求封装(通用)

GET /*** 通过URL获取页面信息* param $url 地址* return mixed 返回页面信息*/ function get_url($url) {$ch curl_init();curl_setopt($ch, CURLOPT_URL,$url); //设置访问的url地址curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);curl_setopt($ch, CURLOPT_SSL_VERIFYH…

[css] 如何重写行内样式?方法有哪些(至少两种)?

[css] 如何重写行内样式&#xff1f;方法有哪些&#xff08;至少两种&#xff09;&#xff1f; 1, !important 最高级 2, var divStyle document.querySelector(#div).style; 修改属性个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; …

css权重核心概念

1. 权重概念&#xff1a; 权重&#xff0c;是一个相对的概念&#xff0c;是针对某一指标而言。某一指标的权重是指该指标在整体评价中的相对重要程度。 权重系数&#xff0c;是表示某一指标项在指标项系统中的重要程度&#xff0c;它表示在其它指标项不变的情况下&#xff0c;这…

[css] 用css3画出一个立体魔方

[css] 用css3画出一个立体魔方 <!DOCTYPE html> <html> <head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><title>立方体</title><style>.box{width: 300px;he…

Qt的简单介绍,发展和由来

一.Qt的介绍 1. Qt是图形用户界面程序框架&#xff0c;也可以称作Qt库&#xff0c;能做界面的还有MFC(只能在windows下使用)&#xff0c;GTK 2. Qt的由来和发展 1. Qt的历史&#xff1a; Qt是1991年奇趣科技公司&#xff08;2008 年 6 月被诺基亚收购&#xff09;开发的一个跨平…

[css] 举例说明shape-outside的属性的用途有哪些?

[css] 举例说明shape-outside的属性的用途有哪些&#xff1f; shape-outside定义了一个可以是非矩形的形状&#xff0c;相邻的内联内容应围绕该形状进行包装。比如使用 shape-outside: circle(); 属性可以实现文字圆形环绕图片的效果。个人简介 我是歌谣&#xff0c;欢迎和大…

2019年7月前CSDN最新排名

截止到2019年6月27日&#xff0c;CSDN排前的大神&#xff1a; 排名第16&#xff1a;https://blog.csdn.net/hejishan 排名第13&#xff1a;https://blog.csdn.net/21aspnet 排名第11&#xff1a;https://blog.csdn.net/notbaron 排名第10&#xff1a;https://blog.csdn.net/…

SpringCloud(二) 服务注册到Eureka

本篇将完成一个可以注册到注册中心的最简单的服务。无论是服务提供者还是服务消费者&#xff0c;都可以在此项目基础上完善出来。 基础服务 最基础的服务&#xff0c;只完成注册到注册中心。 1、pom.xml 文件 1 <?xml version"1.0" encoding"UTF-8"?&…

CSS之层模型

一&#xff1a;理解 如果懂Photoshop的同事&#xff0c;那么层模型就像它的图层那样&#xff0c;上下图层互不影响&#xff0c;可以重叠组合出你想要的视觉。 或者可以理解为楼层&#xff0c;同一栋大厦的不同楼层&#xff0c;再二维角度说&#xff0c;大家的经纬度&#xff…

[css] ui设计中px、pt、ppi、dpi、dp、sp之间的关系?

[css] ui设计中px、pt、ppi、dpi、dp、sp之间的关系&#xff1f; QQ20150717160352 做了几个移动端的项目之后&#xff0c;深感移动端尺寸换算的必要性&#xff0c;在此做个总结。 先介绍下各自的定义&#xff1a; px&#xff1a;pixel&#xff0c;像素&#xff0c;电子屏幕…

SQL多列查询最大值

直接从某一列查询出最大值或最小值很容易&#xff0c;通过group by字句对合适的列进行聚合操作&#xff0c;再使用max()/min()聚合函数就可以求出。 样本数据如下&#xff1a; key_idxyzA123B552C471D338求查询每个key的最大值&#xff0c;展示结果如下&#xff1a; key_idcolA…

CSS之浮动模型

浮动模型又叫流模型&#xff0c;什么是float&#xff08;浮动&#xff09; 最早是为了适应报纸的排版&#xff0c;文字环绕图片的效果&#xff0c;后来经过使用和研究发展出一系列复杂的用法。 CSS 的 Float&#xff08;浮动&#xff09;&#xff0c;会使元素向左或向右移动&…

工作336:uni-ele-el-table修改宽度问题

<el-table-columnfixed"right"header-align"center"label"操作"width"200px">

java 递归调整为队列

如果递归的是深而不广的树时&#xff0c;应该使用队列来优化递归&#xff1b;如果递归是广而不深的树的时候&#xff0c;就应该用递归来优化队列。 https://blog.csdn.net/pseudonym_/article/details/71600084?utm_sourceitdadao&utm_mediumreferral转载于:https://www.c…

工作337:pc-ele-ment联查问题

<grid-radiochange"ListRuery"v-model"query.platform":border"true":options"platform_category"/><!--query.platform--></el-form-item><el-form-item label"平台选择"><!-- <el-checkbo…

html中内联元素和块级元素的区别(整理版)

块级元素和内联元素的主要区别 块级元素 内联元素&#xff08;即行内元素&#xff09; 总是在新行上开始&#xff0c;独占一行默认情况下&#xff0c;宽度自动填满其父元素 相邻的行内元素会排列再同一行里&#xff0c;直到一行排不下&#xff0c;才会换行&#xff0c;宽度随…

工作338:pc重置筛选条件

this.query{}console.log(this)getAction("/account/list",{query:{platform_channel: this.query.platrorm_channel,platform_category:this.query.platform,department_id:this.query.department,}}).then(res>{console.log(res)this.accountListres.data})运行…