题意:给出一个N*M的矩形区域和每个区域的状态--/没有石油,(定义)如果两个有石油的区域是相邻的(水平、垂直、斜)则认为这是属于同一个oil pocket

求这块矩形区域一共有多少oilpocket

#include <stdio.h>
int grid[101][101];
char s[102][102];
int m,n;
int dir[4][2]={{-1,0},{1,0},{0,1},{0,-1}};
void dfs(int x,int y)
{int i,xx,yy;grid[x][y]=0;for(i=0;i<4;i++){xx=x+dir[i][0];yy=y+dir[i][1];if(xx<0||yy<0||x>m||y>=n)continue;if(grid[xx][yy]==1)dfs(xx,yy);}
}int main()
{int i, j, sum;while(scanf("%d%d", &m, &n), m){for(i = 0; i < m; i++)scanf("%s", s+i);for(i = sum = 0; i < m; i++)for(j = 0; j < n; j++){if(s[i][j] == '@'){sum++;dfs(i, j);}}printf("%d\n", sum);}return 0;
}

acm入门搜索-石油数目相关推荐

  1. c语言记忆化搜索,HNUSTC语言基础简单数据结构acm入门第一讲搜索.ppt

    C语言基础,简单数据结构,ACM入门讲座搜索部分 Bjut:mark063 2010.10.30 1 Evaluation only. Created with Aspose.Slides for . ...

  2. C语言oj学生成绩输入和输出,『ACM入门』蓝桥杯ACM训练系统基本输入输出教程

    在介绍训练场的OJ系统之前,首先为大家介绍一下ACM: ACM原代表美国计算机协会,因其举办的ICPC即国际大学生程序设计竞赛而闻名全世界,此项赛事要求学生的在五小时内解决全英文问题,并在效率和速度以 ...

  3. ElasticSearch入门-搜索(java api)

    ElasticSearch入门-搜索(java api) package com.qlyd.searchhelper;import java.util.Map;import net.sf.json.J ...

  4. ACM入门之【搜索】

    搜索在ACM中是很重要的. 搜索一般分为DFS和BFS两大类,下面又划分很多的小类. 入门习题: 842. 排列数字 843. n-皇后问题 844. 走迷宫 845. 八数码

  5. ACM入门及STL简介(转)

    第一章 新手入门 1.      ACM国际大学生程序设计竞赛简介 1)      背景与历史 1970年在美国TexasA&M大学举办了首次区域竞赛,从而拉开了国际大学生程序设计竞赛的序幕. ...

  6. 大牛对ACM入门菜鸟的一些话

    http://www.cnblogs.com/yefengCrazy/p/5636677.html 首先就是我为什么要写这么一篇日志.原因很简单,就是因为前几天有个想起步做ACM人很诚恳的问我该如何入 ...

  7. 【转载】ACM入门 .

    初期: 一.基本算法:      (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法.      ( ...

  8. ACM入门题目(北大ACM教材)

    这个是自己经过一段时间A的题目,非抄书!然后也自己做了一个工程把它管理起来. ACM.h   这个头文件主要是一些头文件映如以及一些ACM函数的定义 #include<iostream> ...

  9. ACM入门指南[转]

    前言: 这篇指南不对ACM/ICPC国际大学生程序设计竞赛进行介绍,计算机学子如果不了解的可以在百度上进行搜索查询,这里介绍的只是一个计算机学生想要在ACM/ICPC里进行发展的初学者.内容比较简单通 ...

  10. ACM入门之【读入、输出优化】

    本文主要是基于oiwiki的做的总结,未来也会做一系列的相关文章.如果想继续看的话可以关注专栏. 做这个专栏的目的是因为自己最近开始系统的再打一下基础.于是想写一个专栏便于喜爱ACM的初学者入门. 目 ...

最新文章

  1. 分布式WebSocket架构
  2. 7000 界面语言不升级_仅限今日!手把手教你C++图形界面开发|附完整代码,海量干货!...
  3. 《C++ Primer Plus》学习笔记——C++程序创建到运行的整个过程
  4. perl 安装html,centos perl 安装HTML-Parser时报错
  5. gradle安装与配置_gradle相关安装
  6. 信息学奥赛一本通(1261:【例9.5】城市交通路网)
  7. sed 删除行首空格
  8. Python:代码规范和命名规范
  9. 兄弟们,请求支援,怎么实现互通,全部都互通的
  10. php vue插件 hplus-ui初学
  11. VMware 15.6版本下载安装
  12. 聊聊BA无标度网络以及其作用
  13. 如何管理公司的共享iPad?
  14. 计算机网络工程教程,计算机网络工程实用教程ppt课件
  15. 两个线程交替打印A1B2C3D4E5输出,6种实现方式
  16. [JLOI2015]装备购买
  17. OpenLayers画点、画圆、画线方法
  18. SAP_FICO常用事务代码
  19. 机械硬盘升级固态硬盘
  20. 【Android应用开发】-(16)如何绕开Google Play地区限制

热门文章

  1. 最简单的vscode使用入门教程
  2. SpringMVC学习笔记(1)-SpringMVC介绍
  3. Mysql数据库性能优化配置:my.cnf/my.ini配置说明详解(测试机器为16GB内存)
  4. 何川L3管理课_模块5_给评价
  5. OpenCV_mechanisms of Canny operator(Canny算子检测图像边缘)
  6. 一文快速掌握 Git 用法(Git介绍及使用流程)
  7. DeepMind成为AI界创业加速营:3年17名资深员工与高管离职
  8. 一文解决样本不均衡(全)
  9. 最新:2021年度泰晤士世界大学学科排名公布
  10. 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。