首页 > 其他分享 >20240331_搜索练习

20240331_搜索练习

时间:2024-03-31 13:45:00浏览次数:13  
标签:查看 int 代码 练习 迷宫 st 点击 搜索 20240331

目录

P3206 Dungeon Master

这题是一个三维迷宫,其中用‘.’表示空地,‘#’表示障碍物,‘S’表示起点,‘E’表示终点,求从起点到终点的最小移动次数,解法和二维的类似,只是在行动时除了东南西北移动外还多了上下。可以上下左右前后移动,每次都只能移到相邻的空位,每次需要花费一分钟,求从起点到终点最少要多久。

  • 分析
    最少步数,考虑bfs,三维使用偏移数组
点击查看代码

P3207 Lake Counting

有一块N×M的土地,雨后积起了水,有水标记为‘W’,干燥为‘.’。八连通的积水被认为是连接在一起的。

请求出院子里共有多少水洼?

点击查看代码
#include<iostream>
using namespace std;
const int N=110;
char s[N][N];
bool st[N][N];
int n,m,ans;
int d[][2]={-1,-1, -1,0, -1,1, 0,-1, 0,1, 1,-1, 1,0,1,1};

void dfs(int x,int y){
    st[x][y] = 1;
    for(int i=0; i<8; i++){
        int a=x+d[i][0], b=y+d[i][1];
        if(a<0||a>=n||b<0||b>=m) continue;
        if(s[a][b]=='.' || st[a][b]) continue;
        dfs(a, b);
    }
}
int main(){
    cin>>n>>m;
    for(int i=0; i<n; i++) cin>>s[i];
    for(int i=0; i<n; i++)
        for(int j=0; j<m; j++)
            if(s[i][j]=='W' && !st[i][j]){ dfs(i,j); ans ++; }
    cout<<ans;
    return 0;
}


P3208 The Castle

点击查看代码

P896 仙岛求药

点击查看代码

P429 【基础】走迷宫

点击查看代码

P2465 迷宫问题

点击查看代码

P952 【入门】算24点

点击查看代码

标签:查看,int,代码,练习,迷宫,st,点击,搜索,20240331
From: https://www.cnblogs.com/hellohebin/p/18106656

相关文章

  • DFS(基础,回溯,剪枝,记忆化)搜索
    DFS基础DFS(深度优先搜索)基于递归求解问题,而针对搜索的过程对于问题的介入状态叫初始状态,要求的状态叫目标状态这里的搜索就是对实时产生的状态进行分析检测,直到得到一个目标状态或符合要求的最佳状态为止。对于实时产生新的状态的过程叫扩展搜索的要点:1.选定初始状态,......
  • L2-004 这是二叉搜索树吗?
    这种题边界真的是每次都搞不清楚,我感觉现场估计也写不出来。#include<bits/stdc++.h>usingnamespacestd;constintN=1010;intismirror;intpre[N];vector<int>post;voiddfs(introot,inttail){//最后一个 if(root>tail)return; inti=root+1; intj......
  • 00342第四章 结构化程序设计 思考题和练习题(C语言)
    一、单项选择题1.若从键盘输入字符串"HOWAREYOU?",可以直接使用库函数【】。        A.scanf    B.getstr    C.gets    D.都不能直接使用2.C语言的库函数中,可以输出double型变量值的是【】。        A.getchar   ......
  • 算法---动态规划练习-9(粉刷房子)
    题目1.题目解析2.讲解算法原理3.编写代码1.题目解析题目地址:点这里2.讲解算法原理创建dp表:vector<vector>dp(n,vector(3))。这里创建了一个二维向量dp,其中dp[i][j]表示第i天选择颜色j的最小成本。初始化第一天的成本:for(inti=0;i<3;i++)......
  • java数据结构与算法刷题-----LeetCode95. 不同的二叉搜索树 II
    java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846文章目录分治回溯+记忆化搜索分治回溯+记忆化搜索卡特兰数,例如对于n个进栈元素,有多少种出栈顺序,......
  • 【2024年5月备考新增】《软考真题分章练习(含答案解析) - 14 组织级项目管理(高项)》
    1题目1、办公软件开发公司A非常重视软件过程管理,按照CMMI(能力成熟度模型)逐步进行过程改进,刚刚实现了组织级过程性能、定量项目管理,按照CMMI(能力成熟度模型),A公司达到了()级别。A.CMMI2B.CMMI3C.CMMI4D.CMMI52、CMMI的连续式表示法与阶段式表示法分别表示:()。A.项......
  • PHP 跳转搜索(Jump Search)
            与二分搜索一样,跳转搜索是一种针对排序数组的搜索算法。基本思想是通过按固定步骤向前跳跃或跳过某些元素来代替搜索所有元素来检查更少的元素(比线性搜索)。例如,假设我们有一个大小为n的数组arr[]和一个大小为m的块(要跳转)。然后我们在索引arr[0]、arr[m]......
  • 搜索引擎语法
    百度语法1.搜索A屏蔽B【A-B】这里的'-'前要有空格2.搜索包含A的信息或者包含B的信息【A|B】3.将搜索范围限定在网页标题【Aintitle:B】也就是必须有A且B的内容必须出现在标题中;'intitle:'后不能有空格4.将搜索范围界定在指定网站中【Asite:站点域名】也就是站点域名......
  • 2023最新293TV v6.2 APP源码 神马TV影视APP源码可对接易支付 修复搜索附安装教程
    神马TV影视APP源码可对接易支付修复搜索附安装教程源码简介2023最新版本293TV、神马tv源码6.2版本修复首字母拼音搜索支持所有易支付解决6.2版本通病自动巡检删除后台文件JSON和api解析后台随意设置总共有5套后台:中控后台,会员后台,苹果CMS后台,反馈后台,解析后台,会员......
  • 8.C语言的一些练习题坑整理
    总结没有顺序之分想起一个算一个逗号表达式https://blog.csdn.net/qq_43539854/article/details/105757536(参考)设f是实型变量,下列表达式中不是逗号表达式的是_________A.f=3.2,1.0B.f>0,f<10C.f=2.0,f>0D.f=(3.2,1.0)逗号表达式即执行第......