2014青岛初中组第2题 洪水 详解(C++)
题目描述:
一场大雨过后。巨大的洪水从四周流向 Q 城市,导致该城市的很多平地区域被巨大的洪水淹没,幸好该城市有些重要的平地四周早已盖好了高墙,高墙内的平地区域洪水无法到达。
你的任务是:给定 Q 城市的地图情况,计算城市中没有被洪水淹没的平地区域面积。
输入格式:
第一行:n,m,表示村子的大小。
以下是 n 行 m 列的矩阵,描述村子的情况,“0”表示平地,“1”表示墙,“0”和“1”之间无空格。
输出格式:
城市没被洪水淹没的平地面积。
限制:
空间限制:128MByte 时间限制:1秒
样例:
输入:输入样例#1: 4 5 00000 00100 01010 00100输入样例#2: 6 5 11000 11011 10101 11011 10001 11110
输出:样例#1结果: 1样例#2结果: 6
提示:
60%的数据:n,m<=100。
100%的数据:n,m<=1000
思路:泛洪算法
代码如下
#include <iostream>
using namespace std;const int N=1e3+10;
int n,m;
int maps[N][N];
int dir[4][2]={{0,1},{1,0},{-1,0},{0,-1}};
int ans;
int flag[N][N];void dfs(int x,int y){if(x<1||x>n||y<1||y>m||maps[x][y]||flag[x][y]){return;}else{flag[x][y]=1;dfs(x+1,y);dfs(x,y+1);dfs(x-1,y);dfs(x,y-1);}
}
int main(){cin>>n>>m;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){scanf("%1d",&maps[i][j]);}}
// cout<<endl;for(int i=1;i<=n;i++){dfs(i,1);}for(int i=1;i<=n;i++){dfs(i,m);}for(int i=1;i<=m;i++){dfs(1,i);}for(int i=1;i<=m;i++){dfs(n,i);}
for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){
// cout<<maps[i][j];if(maps[i][j]==0&&flag[i][j]==0){ans++;}}
// cout<<endl;}cout<<ans;return 0;
}
2014青岛初中组第2题 洪水 详解(C++)相关推荐
- 866计算机网络真题,浙江大学866管理学综合历年考研真题及详解
基本信息 市场价: 25.00 当当价: 25.00 顾客评分:0星 商品描述 品牌:圣才学习网型号:28488类别:教育软件 详情电脑版下载地址:http://www.100eshu.com/Dig ...
- 2013河北省职称计算机应用能力考试操作题答案,2013河北省职称计算机应用能力考试操作题步骤详解(部分).doc...
2013河北省职称计算机应用能力考试操作题步骤详解(部分) 2013河北省职称计算机应用能力考试操作题步骤详解PAGE PAGE - 11 - 共 NUMPAGES 11页操作题PPT 1-5PPT操 ...
- 2013河北省职称计算机应用能力考试操作题答案,(2013河北省职称计算机应用能力考试操作题步骤详解PPT部分.doc...
(2013河北省职称计算机应用能力考试操作题步骤详解PPT部分 操作题PPT 1-5 PPT操作练习一 打开PPT文件夹下的"PPT_1.PPT"演示文稿文件,然后进行如下操作: ...
- 中科院计算机学院考研真题,2021年862计算机学科中国科学院大学考研真题及详解...
[全套]2021年中国科学院大学北京市培养单位862计算机学科综合考研全套资料 考研真题及详解 名校考研真题 计算机学科专业基础综合真题及详解 一.单项选择题:1-40小题,每小题2分,共80分.下列 ...
- 第十四届蓝桥杯第三期模拟赛 C/C++ B组 原题与详解
本篇文章对第十四届蓝桥杯第三期模拟赛所有的题目进行了详细解析.如果大家还想刷题的话,我给大家整理出了第十二届的省赛真题:第十二届省赛C/C++ B组真题.推荐大家可以去做一下. 文章目录 一.填空题 ...
- [杨可桢]机械设计基础题库 机械设计基础习题 2022机械设计基础考试题答案 杨可桢《机械设计基础》(第7版)笔记和课后习题(含考研真题)详解
[杨可桢]机械设计基础题库 机械设计基础习题 2022机械设计基础考试题答案-硕达学习网 杨可桢<机械设计基础>(第7版)笔记和课后习题(含考研真题)详解 目录 第1章 平面机构的自由 ...
- 宁波大学考博c语言真题,宁波大学考博英语历年真题及详解
2011年宁波大学考博英语真题及详解 Section I Use of English Directions: Read the following text. Choose the best wo ...
- c语言课后题2.52.8答案,新概念第二册课后题答案详解:Lesson52
新概念英语作为一套世界闻名的英语教程,以其全新的教学理念,有趣的课文内容和全面的技能训练,深受广大英语学习者的欢迎和喜爱.为了方便同学们的学习,新东方在线新概念英语网为大家整理了最全面的新概念第二册课 ...
- 2021年美赛A题思路详解
2021年数模美赛A题思路详解 题目分析 思路详解 由于和队友思路不一致,导致最后我的思路只算了前两问,而后几问用了我认为离题的PCA(主成分分析)的方法,我的建模思路没有得到完全实现,总体情况很不满 ...
- 关于SASBase认证考试(70真题+答案详解)中的其中一道题
[腾讯文档]SASBase认证考试(70真题+答案详解) https://docs.qq.com/pdf/DR1hid1pZWWJXSFNV 可以查看文档 这里是第2题 @的用法 一般情况下就是sas ...
最新文章
- Spring-AOP 通过配置文件实现 环绕增强
- RocketMQ 分布式事务
- 每日一课(4/75)逻辑运算指令
- MySQL 数据归档清理方法
- STM32 FFT 音频处理
- 7-12 分解质因数 (10分)
- webstorm绝对路径引入echarts_Webstorm+Webpack+echarts构建个性化定制的数据可视化图表两个echarts详细教程(柱状图,南丁格尔图)...
- 基于Java+Springmvc+vue+element员工信息管理系统详细设计
- 一目了然——二叉树的遍历(先序,中序,后序遍历)
- 美团 CEO 王兴:从 0 到干到 300 亿美金,格局上输了,再多努力都不可能赢
- cryptsetup 使用说明 中文翻译
- TensorBoard一幅图中显示多条曲线
- introduce yourself in the Interview(面试英语自我介绍)
- SpringBoot整合MQ消息队列
- 【Node】nvm 版本管理工具
- C语言:十进制转十六进制并组合输出
- mysql(1)关于into outfile 导出数据解决权限问题
- 基于Java Web的大学生综合素质测评系统
- Matlab多无人艇协同避碰情况下的仿真探索
- Wireshark 使用手册
热门文章
- 2016.8.7 UnicodeEncodeError 同时遍历多个list
- Docker-registry + GlusterFS
- 关于Apache的25个初中级面试题
- web controls归档
- 当synchronized遇上integer
- puppetmaster 自动签名
- Mysql 主从复制简易操作指南
- nginx 启动、重启、关闭
- 《Android面试宝典》学习笔记(第三章:组件)
- 调用ajax,返回json, 报异常 java.lang.OutOfMemoryError: Java heap space