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

小说网站怎么做空间小成都专业网站推广公司

小说网站怎么做空间小,成都专业网站推广公司,做网站教程和维护网站,食品网站开发的背景全球变暖 原题目链接 题目描述 你有一张某海域 N x N 像素的照片: . 表示海洋# 表示陆地 例如如下所示: ....... .##.... .##.... ....##. ..####. ...###. .......在照片中,“上下左右”四个方向上连在一起的一片陆地组成一座岛屿。例…

全球变暖

原题目链接

题目描述

你有一张某海域 N x N 像素的照片:

  • . 表示海洋
  • # 表示陆地

例如如下所示:

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

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

由于全球变暖导致海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围将会被海水淹没。具体来说:

  • 如果一块陆地像素与海洋相邻(上下左右方向中有 .),那么它会被淹没。

例如上述海域未来会变成:

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

请你计算:根据科学家的预测,照片中有多少岛屿会被完全淹没(即该岛屿的所有陆地像素都会被淹没)。


输入描述

  • 第一行包含一个整数 N(1 ≤ N ≤ 1000),表示海域为 N x N 像素。
  • 接下来 N 行,每行 N 个字符,表示当前海域图像。
  • 每个字符为 .(海洋)或 #(陆地)。
  • 保证第 1 行、第 1 列、第 N 行、第 N 列的所有像素都是海洋。

输出描述

  • 输出一个整数,表示未来会被完全淹没的岛屿数量

输入示例

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

输出示例

1

c++代码

#include<bits/stdc++.h>using namespace std;struct node {int sym = 0, index = 0;
};vector<vector<node>> arr;
string str;
int ans = 0, n;
unordered_set<int> result;void dfs(int i, int j, int index) {if (i < 0 || i >= n || j < 0 || j >= n || arr[i][j].sym == 0 || arr[i][j].index != 0) return;arr[i][j].index = index;dfs(i + 1, j, index), dfs(i - 1, j, index), dfs(i, j + 1, index), dfs(i, j - 1, index);
}bool check(int i, int j) {if (i - 1 >= 0 && arr[i - 1][j].sym == 0) return true;if (i + 1 < n && arr[i + 1][j].sym == 0) return true;if (j - 1 >= 0 && arr[i][j - 1].sym == 0) return true;if (j + 1 < n && arr[i][j + 1].sym == 0) return true;return false;
}int main() {std::ios::sync_with_stdio(false), std::cin.tie(nullptr), std::cout.tie(nullptr);cin >> n;arr = vector<vector<node>>(n, vector<node>(n));for (int i = 0; i < n; i++) {cin >> str;for (int j = 0; j < n; j++) {if (str[j] == '.') arr[i][j].sym = 0;else arr[i][j].sym = 1;}}for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if (arr[i][j].sym == 1 && arr[i][j].index == 0) {ans++;dfs(i, j, ans);}}}for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if (arr[i][j].sym == 1) {if (check(i, j)) arr[i][j].index = 0;if (arr[i][j].index != 0 && result.find(arr[i][j].index) == result.end()) result.insert(arr[i][j].index);}}}cout << ans - result.size();return 0;
}//by wqs
http://www.dtcms.com/wzjs/382047.html

相关文章:

  • 什么软件做网站好些怎么做推广网站
  • 网站建设与客户价格谈判技巧标题关键词优化技巧
  • 做服装的网站女孩子做运营是不是压力很大
  • 合肥网站建设方案服务推广引流渠道有哪些
  • 东莞哪家网站建设专业seo技术推广
  • 建网站多少费用百度推广账户登陆
  • 青岛网站推广外包如何做好网络推广工作
  • 商务网站开发需求分析网络营销与管理专业是干什么的
  • 网站做微信链接怎么做上海网站建设方案
  • 企业做年度公示在哪个网站seo关键词首页排名
  • 网站建设费用多少钱免费域名注册
  • 菏泽做网站建设找哪家好廊坊自动seo
  • 富阳做兼职的网站做网站找哪家好
  • 3d动画制作视频教程windows优化大师可以卸载吗
  • 企业网站建设排名资讯模板建站教程
  • 山西太原做企业网站建设的公司seo怎么弄
  • 做图片格式跟尺度用哪个网站好石家庄百度seo
  • 创新型的顺的网站制作免费做做网站
  • 做餐饮培训网站广告网站seo
  • 比较多人用什么网站做推广哈尔滨seo优化公司
  • 做百度移动网站排名找推网
  • 大型门户网站建设所具有的功能模块主要有扫描图片找原图
  • 青岛做网站百度网盘app官方下载
  • 广州网络服装网站建设百度识图在线入口
  • 重庆网站空间键词排名腾讯云服务器
  • 招聘美容师在哪个网站做招聘最有效如何注册域名及网站
  • 做搜狗pc网站排提升关键词排名seo软件
  • web前端就业前景宁波seo优化定制
  • 中企动力会员控制平台优化服务平台
  • 有经验的南昌网站建设百度人工服务24小时