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

蓝桥杯(迷宫,C++)

输入: 

 思路:

1、注意输入用字符串。

2、采用广度搜素的方法来求解。

3、因为最后要求字典序最小且D<L<R<U,所以在遍历四个方向的时候, 先向下,再向左、右,最后向上。

#include<iostream>
#include<queue>
using namespace std;
int n, m;
string Map[500];
const int dire[4][2] = { {1,0},{0,-1},{0,1},{-1,0} };//下,左,右,上
const string d = "DLRU";
struct node
{int i, j;string ans;
};
queue<node> q;
void BFS()
{node s;s.i = 0, s.j = 0; s.ans = "";Map[0][0] = '1';q.push(s);while (!q.empty()){node a = q.front(), b;int x = a.i;//该点坐标int y = a.j;q.pop();if (x == n - 1 && y == m - 1)//走到终点{cout << a.ans.length() << endl;//步数cout << a.ans << endl;break;//最先达到的即为在步数最小的情况下,字典序最小}for (int i = 0; i < 4; i++)//遍历四个方向{int newx = x + dire[i][0];int newy = y + dire[i][1];if (newx < 0 || newy < 0 || newx >= n || newy >= m)//越界跳过continue;if (Map[newx][newy] == '0')//通路{b.ans = a.ans + d[i];//加上该次步骤b.i = newx, b.j = newy;Map[newx][newy] = '1';//标识已经走过q.push(b);//进入队列}}}
}
int main()
{cin >> n >> m;for (int i = 0; i < n; i++){cin >> Map[i];}BFS();// cout << "DDDDRRURRRRRRDRRRRDDDLDDRDDDDDDDDDDDDRDDRRRURRUURRDDDDRDRRRRRRDRRURRDDDRRRRUURUUUUUUULULLUUUURRRRUULLLUUUULLUUULUURRURRURURRRDDRRRRRDDRRDDLLLDDRRDDRDDLDDDLLDDLLLDLDDDLDDRRRRRRRRRDDDDDDRR";return 0;
}

http://www.lryc.cn/news/193373.html

相关文章:

  • Python爬虫selenium安装谷歌驱动解决办法
  • 生信教程:使用拓扑加权探索基因组进化(3)
  • React js原生 详解 HTML 拖放 API(鼠标拖放功能)
  • LiveMedia视频中间件如何与第三方系统实现事件录像关联
  • 机器学习-有监督算法-决策树和支持向量机
  • luffy项目之后台项目搭建、目录调整、封装日志、全局异常、Response、数据库连接
  • C++标准模板(STL)- 类型支持 (数值极限,min_exponent10,max_exponent,max_exponent10)
  • linux 服务器类型Apache配置https访问
  • langchain 加载各种格式文件读取方法
  • 飞花令游戏(Python)
  • 解决“413 Request Entity Too Large”错误 代表请求包太大,服务器拒绝响应
  • MoeCTF2023web
  • C语言编写简易图书管理系统
  • C++入门 第一篇(C++关键字, 命名空间,C++输入输出)
  • python股票波动性分析
  • 53 打家劫舍
  • CentOS 7 基于C 连接ZooKeeper 客户端
  • 2023-2024-1 for循环-1(15-38)
  • 初级问题 程序中的变量是指什么?中级问题 把若干个数据沿直线排列起来的数据结构叫作什么?高级问题 栈和队列的区别是什么?
  • clickhouse数据库简介,列式存储
  • flask 发送ajax
  • Android Gradle 命令打包AAR
  • 如何导出带有材质的GLB模型?
  • C/C++面试常见知识点
  • 详细介绍数据结构-堆
  • 001flutter基础学习
  • leetCode 1143.最长公共子序列 动态规划 + 图解
  • 解密人工智能:KNN | K-均值 | 降维算法 | 梯度Boosting算法 | AdaBoosting算法
  • Python深度学习实践
  • VS2017+QT+PCL环境配置