当前位置: 首页 > wzjs >正文

外贸网站建设电话毕设DW做网站的过程

外贸网站建设电话,毕设DW做网站的过程,广西五建公司官网,建设网站的内容规划题目描述 你有一张某海域 NN 像素的照片,. 表示海洋、 # 表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. .......其中 "上下左右" 四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有 2 座岛屿。 由…

题目描述

你有一张某海域 N×N 像素的照片,. 表示海洋、 # 表示陆地,如下所示:

.......
.##....
.##....
....##.
..####.
...###.
.......

其中 "上下左右" 四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有 2 座岛屿。

由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。

例如上图中的海域未来会变成如下样子:

.......
.......
.......
.......
....#..
.......
.......

请你计算:依照科学家的预测,照片中有多少岛屿会被完全淹没。

输入格式

第一行包含一个整数 N。(1≤N≤1000)。

以下 N 行 N 列代表一张海域照片。

照片保证第 1 行、第 1 列、第 N 行、第 N 列的像素都是海洋。

输出格式

一个整数表示答案。

输入输出样例

输入 

7 
.......
.##....
.##....
....##.
..####.
...###.
.......  

输出 

1

说明/提示

时限 1 秒, 256M。

//代码如下:

//全球变暖问题的本质是:
//寻找连通块 遍历连通块 在连通块的范围内寻找一块陆地(就够了,足以证明整个连通块不会被淹没) 
//记得将整个连通块寻找完全 建议使用dfs搜索#include<iostream>
#include<vector>
#include<algorithm>
#include<cstring>using namespace std;
//存储图
vector<string> picture;
//访问数组
vector<vector<bool>>  visited;
//方位数组
int indexx[]={0,0,-1,1};
int indeyy[]={-1,1,0,0};
//图的边长
int N; 
//标志整个连通块是不是被淹没
bool flag; 
//存储坐标
typedef struct Node{int x;int y;Node(int x,int y):x(x),y(y){}
}Node; 
//存储没有被淹没的连通块
int ans=0; void dfs(int x,int y){//剪枝操作if(x<0||x>N||y<0||y>N||visited[x][y]||picture[x][y]!='#') return;//每次只处理一个陆地 if(!flag){int cnt=0;for(int i=0;i<4;i++){int newx=x+indexx[i];int newy=y+indeyy[i];if(0<=newx&&newx<N&&0<=newy&&newy<N&&picture[newx][newy]=='#') {cnt++;}}if(cnt==4){//整个连通块不可能被淹没 flag=true;ans++;}	//将处理过的连通块中的一部分陆地标记 }//继续处理连通块知道整个连通块都被搜索出来 visited[x][y]=true;for(int i=0;i<4;i++){int newx=x+indexx[i];int newy=y+indeyy[i];if(newy<0||newy>N||newy<0||newy>N||visited[newx][newy]||picture[newx][newy]!='#')continue;dfs(newx,newy);}//直到整个连通块都被处理掉 return ;
}
int main(){//图的边长 cin>>N;//存储图 for(int i=0;i<N;i++) {string ss;cin>>ss;picture.push_back(ss);}//存储被访问数组 for(int i=0;i<N;i++){vector<bool> ss(N,false);visited.push_back(ss);}//遍历整张图 //记录开始岛屿数量int rans=0;for(int row=0;row<N;row++){for(int col=0;col<N;col++){//记录这个位置 //继续寻找下一个连通块 if(picture[row][col]=='#'&&!visited[row][col]){rans++;flag=false;dfs(row,col);}}}//输出答案 cout<<rans-ans<<endl;return 0;
}
/*
5
.....
.###.
.###.
.###.
.....9
.........
.#######.
.#######.
.#######.
..#.#....
.#######.
.#######.
.#######.
.........
*/


文章转载自:

http://g87yLst6.zwndt.cn
http://Q7wQvyke.zwndt.cn
http://tJZZq6aG.zwndt.cn
http://5RwQyyqs.zwndt.cn
http://5nfyGBsU.zwndt.cn
http://YUgz9AD5.zwndt.cn
http://ABzP5B53.zwndt.cn
http://1xhBv9w5.zwndt.cn
http://6A499W0X.zwndt.cn
http://AeWi5ssB.zwndt.cn
http://epMTzrhe.zwndt.cn
http://9lYfIaHN.zwndt.cn
http://sLCltR3T.zwndt.cn
http://Q9WFIY5E.zwndt.cn
http://dtahNC6r.zwndt.cn
http://mwysJltT.zwndt.cn
http://EKRXItvO.zwndt.cn
http://2STIoES2.zwndt.cn
http://rEMnEtj2.zwndt.cn
http://s128nOz9.zwndt.cn
http://OlWwcmIJ.zwndt.cn
http://nrfHTbHc.zwndt.cn
http://UwQmTqIG.zwndt.cn
http://vEYuAIiw.zwndt.cn
http://AmtnhB96.zwndt.cn
http://nq3QIreM.zwndt.cn
http://5GMfB5ht.zwndt.cn
http://jFlLjhBS.zwndt.cn
http://KHpFtzbs.zwndt.cn
http://3kzCRDqX.zwndt.cn
http://www.dtcms.com/wzjs/658019.html

相关文章:

  • 网站设计论文框架源码商城系统
  • 网站需要租服务器吗网络营销推广主要做什么?有哪些方法和技巧?
  • 网站被k的原因郑州网络seo
  • 网站的建设背景中国林业工程建设协会官方网站
  • 呼伦贝尔寰宇网站建设承德信息网
  • 自建企业网站温州网站建设培训
  • 种植园网站模板重庆网站建设哪家有
  • 网站建站管理系统制作网页的心得
  • 做网站一年的维护费用是多少青浦华新网站建设
  • 网站访问量查询江宁区建设工程局网站进不去
  • 网站开发时间进度表松原公司做网站的流程
  • 开发一个电商网站php网站开发技术代码
  • 长沙建网站设计公司教育网站开发文档模板
  • 上海交通网站建设免费erp系统
  • 素材网站源码哪些网站是响应式的
  • 如何自建网站做淘客wordpress 课程
  • js跳转网站怎么做建设部网站业绩补录
  • 网站开发项目经验和教训网页设计与制作软件
  • 盐城做网站哪家公司好网站备案和不备案有什么区别
  • 网站引流.网站建设合同补充内容
  • 网站内链怎么布局wordpress定时关闭
  • 深圳手机商城网站设计费用南宁建设厅官方网站
  • 建设银行鞍山网站网站建设可研
  • 网站域名哪些后缀更好唐山建设网站的网站
  • 怎么做跳转网站c 网站开发
  • 网站seo优化课程建设网站的企业排行
  • 做完整的网站设计需要的技术佛山优化公司推广
  • 手机网站 优化狼窝网站更新升级通知
  • 网站设计语言翻译免费的开发网站建设
  • 健身网站开发可行性分析海口兼职网站