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

特产网站模板网站建设公司广告标题语

特产网站模板,网站建设公司广告标题语,wordpress如何添加背景音乐,网站建设怎么做P8662 [蓝桥杯 2018 省 AB] 全球变暖--dfs 题目 解析讲下DFS代码 题目 解析 这道题的思路就是遍历所有岛屿,判断每一块陆地是否会沉没。对于这种图的遍历,我们首先应该想到DFS。 代码的注意思想就是,在主函数中遍历找出所有岛屿&#xff0c…

P8662 [蓝桥杯 2018 省 AB] 全球变暖--dfs

      • 题目
  • 解析
    • 讲下DFS
      • 代码

题目

在这里插入图片描述

解析

这道题的思路就是遍历所有岛屿,判断每一块陆地是否会沉没。对于这种图的遍历,我们首先应该想到DFS。

代码的注意思想就是,在主函数中遍历找出所有岛屿,将其用DFS遍历判断其所有陆地。

注意一下代码中的细节:

1.主函数每次给dfs传岛屿时,需要初始化t(记录岛屿是否会沉没
2.每次用完一个岛屿,将其重新命为其他符号,做标记(DFS核心

讲下DFS

深度优先搜索(DFS)是一种用于遍历或搜索树、图或网格结构的算法,其核心思想是“尽可能深地探索分支,直到尽头再回溯”。

适合使用DFS的场景:
1.连通区域遍历
问题类型:需要找到所有相连的区域(如岛屿、迷宫中的连通路径)。
示例:统计地图中的岛屿数量、标记病毒感染的区域。

2.路径问题
问题类型:寻找从起点到终点的所有可能路径(如迷宫、棋盘游戏)。
示例:判断迷宫是否有出口,计算八皇后问题的解法。

3.状态空间搜索
问题类型:需要穷举所有可能状态的问题(如排列组合、子集生成)。
示例:生成所有可能的括号组合、排列数字。

总结
使用DFS的时机:需要遍历所有可能路径、处理连通区域、或状态空间搜索时。

代码

#include <iostream>
#include <vector>
#include <set>
#include <cstring>
#include <algorithm>
#include <math.h>
#include <queue>
#include <climits>  // 包含INT_MAX常量
#include <cctype>
using namespace std;
int n, book[1010][1010], cnt, t, ans, sum;
char map[1010][1010];int dx[] = {1, -1, 0, 0}, dy[] = {0, 0, 1, -1};void dfs(int x, int y) {if (!t) {cnt = 0;//判断该点【陆地】是否会被淹没用t标记for (int i = 0; i < 4; i++) {if (map[x + dx[i]][y + dy[i]] != '.')cnt++;if (cnt == 4) {ans += 1;t = 1;}}}map[x][y] = '*';//标记用过的点//开始遍历岛屿上的其他点【陆地】for (int i = 0; i < 4; i++) {int nx = x + dx[i], ny = y + dy[i];//越界or不是陆地就跳出if (nx < 0 || nx >= n || ny < 0 || ny >= n || map[nx][ny] != '#')continue;//继续判断该岛屿的其他陆地dfs(nx, ny);}
}int main() {cin >> n;for (int i = 0; i < n; i++)for (int j = 0; j < n; j++)cin >> map[i][j];for (int i = 1; i < n - 1; i++) {for (int j = 1; j < n - 1; j++) {if (map[i][j] == '#') { //找到岛屿,调用dfs遍历岛屿中的所有陆地sum++;t = 0;//用于标记该岛屿是否会沉dfs(i, j);}}}cout << sum - ans << endl;//总岛屿数 - 不会沉没的岛屿数return 0;
}

文章转载自:

http://B66RoibR.fkfyn.cn
http://1IVa6WrL.fkfyn.cn
http://JkVE9lBd.fkfyn.cn
http://m7Rq2typ.fkfyn.cn
http://MjKtGViQ.fkfyn.cn
http://ao82wGTa.fkfyn.cn
http://Y2b2zHxR.fkfyn.cn
http://B17U1jAF.fkfyn.cn
http://Wcsxm0WS.fkfyn.cn
http://qnOpqKMy.fkfyn.cn
http://RGov8LiK.fkfyn.cn
http://h3t2EEwM.fkfyn.cn
http://6WdaobFe.fkfyn.cn
http://xnhPn3AN.fkfyn.cn
http://f9NtxIUF.fkfyn.cn
http://LUclt30C.fkfyn.cn
http://I7gsz8yo.fkfyn.cn
http://6U35zUdm.fkfyn.cn
http://9A25OxVM.fkfyn.cn
http://6gQlGT7y.fkfyn.cn
http://SmYFHXVI.fkfyn.cn
http://NBkg1irp.fkfyn.cn
http://MG8zD0Ni.fkfyn.cn
http://s3bjqFTu.fkfyn.cn
http://FKz6NVnW.fkfyn.cn
http://SImUPBiG.fkfyn.cn
http://MVTuGzFX.fkfyn.cn
http://75vyYkCE.fkfyn.cn
http://aLhj8AAd.fkfyn.cn
http://ZRW2Xxwm.fkfyn.cn
http://www.dtcms.com/wzjs/657526.html

相关文章:

  • 中国建设银行个人网站注册软文广告素材
  • 学做电商那个网站好创新创业项目计划书ppt
  • 域名绑定空间后 一般多久能打开网站南宁网站seo推广公司
  • 广州自助公司建网站南通精诚建设集团有限公司网站
  • 做网站长沙一个企业网站做几个关键词
  • 摄影素材网站wordpress单击右键提示你是坏人
  • 网站改版合同书wordpress 取消边栏
  • 毕业设计可以做网站不现在哪个网站做电商好
  • 新浪云怎么做自己的网站网站开发流程比较合理
  • 做一个网站美工多少钱网站制作公司杭州
  • 四川网站推广网络营销方案模板
  • 个人网站 做啥好百度广告联盟网站
  • 怎么样创办一个网站广州建站推广
  • 如何建设品牌网站大连网站推广排名
  • 物流建设网站总结东营网站建设哪家好
  • 制作手机网站工具购物网站排名前十
  • wordpress建企业网站WordPress博客整站带数据
  • 企业网站建设的重要性wordpress 远程插件安装 ftp
  • 怎样做视频播放网站廊坊哪里有制作手机网站的
  • 网站建设锚点链接网站开发语言p
  • 长寿网站建设邢台推广公司
  • 苏州做网站价格wordpress 锚点定位
  • asp建站软件中国十大财务软件
  • 手机端网站开发框架东坑网站建设公司
  • 二手车 网站程序网站首页制作采用
  • 微信端网站开发流程做网站需要什么功能
  • 楚雄网站制作网站限时抢购怎么做
  • .net开发的网站能做优化吗免费网站建设支持ftp
  • 网站服务器租用时间视频推广是什么意思
  • dede做手机网站免费商城系统下载