蓝桥杯 迷宫

参考代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int e[55][55], vis[55][55];  //e矩阵表示障碍物信息,vis矩阵表示点是否被访问过 
int m = 30, n = 50;
struct node{  //定义结构体,用于存放点的信息 int x;int y;string path;  //用来表示从起点到该点的最短路径 
};
queue<node> q;bool check(int x, int y)
{if(x >= 1 && x <= m && y >= 1 && y <= n && !vis[x][y] && !e[x][y]) return true;else return false;
}int main()
{char c;for(int i = 1; i <= m; i++){for(int j = 1; j <= n; j++){c = getchar();	e[i][j] = c - '0';  //表示此初是否有障碍 }c = getchar();  //需要用getchar()来读取一个换行符 }int newx, newy;node top, temp;  //定义结构体变量 temp.x = 1;  //定义起点 temp.y = 1;temp.path = "";q.push(temp);  //将起点放入队列中 vis[1][1] = true;string str = "DLRU";int cnx[4] = {1, 0, 0, -1};  //4个移动方向的坐标变化量 int cny[4] = {0, -1, 1, 0};while(!q.empty())  //队列为空时退出循环 {top = q.front();  //读取队列第一个变量,进行bfs遍历 q.pop();for(int i = 0; i < 4; i++)  //对于四个方向依次进行遍历 {newx = top.x + cnx[i];newy = top.y + cny[i];if(check(newx, newy))  //判断产生的新节点是否超出边界,是否在障碍物上,是否已被访问过 {temp.x = newx;temp.y = newy;temp.path = top.path + str[i];  //从起点到当前节点走过的路径 q.push(temp);vis[newx][newy] = true;  //标记当前节点已经被访问 if(newx == m && newy == n)  //到达终点 {cout << temp.path;  //输入路径 return 0;}}}}return 0;
}

在这里插入图片描述

输入数据:

01010101001011001001010110010110100100001000101010
00001000100000101010010000100000001001100110100101
01111011010010001000001101001011100011000000010000
01000000001010100011010000101000001010101011001011
00011111000000101000010010100010100000101100000000
11001000110101000010101100011010011010101011110111
00011011010101001001001010000001000101001110000000
10100000101000100110101010111110011000010000111010
00111000001010100001100010000001000101001100001001
11000110100001110010001001010101010101010001101000
00010000100100000101001010101110100010101010000101
11100100101001001000010000010101010100100100010100
00000010000000101011001111010001100000101010100011
10101010011100001000011000010110011110110100001000
10101010100001101010100101000010100000111011101001
10000000101100010000101100101101001011100000000100
10101001000000010100100001000100000100011110101001
00101001010101101001010100011010101101110000110101
11001010000100001100000010100101000001000111000010
00001000110000110101101000000100101001001000011101
10100101000101000000001110110010110101101010100001
00101000010000110101010000100010001001000100010101
10100001000110010001000010101001010101011111010010
00000100101000000110010100101001000001000000000010
11010000001001110111001001000011101001011011101000
00000110100010001000100000001000011101000000110011
10101000101000100010001111100010101001010000001000
10000010100101001010110000000100101010001011101000
00111100001000010000000110111000000001000000001011
10000001100111010111010001000110111010101101111000

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/312609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET Core基于K8S的微服务电商案例实践--学习笔记

摘要一个完整的电商项目微服务的实践过程&#xff0c;从选型、业务设计、架构设计到开发过程管理、以及上线运维的完整过程总结与剖析。讲师介绍产品需求介绍纯线上商城线上线下一体化跨行业跨商业模式从0开始&#xff0c;我们应该采用微服务吗&#xff1f;不适合采用微服务架构…

蓝桥杯 日志统计 尺取

参考代码&#xff1a; #include<bits/stdc.h> using namespace std; typedef long long ll; vector<int> v[100005]; //定义容器用于存放第i篇帖子被点赞的时间 int main() {ios::sync_with_stdio(false); int n, d, k;cin >> n >> d >> k;in…

2019 ASP.NET Core 之微调查报告,新鲜出炉

▼更多精彩推荐&#xff0c;上午11点到达▼在本周三的时候&#xff0c;因为直播没有找到合适内容的缘故&#xff0c;因此在我的公众号内发起了一波问卷调查&#xff0c;地址是&#xff1a;【壹个问卷】NetCore学习的知识点调查&#xff0c;当时就是想着有十来份儿就已经很给面子…

蓝桥杯 子串分值

参考代码&#xff1a; #include<bits/stdc.h> using namespace std;int main() {ios::sync_with_stdio(false); string str;cin >> str;int sum 0;int left, right;char s;int len str.size();for(int i 0; i < len; i) //依次循环每一个字符&#xff0c;…

基于 Blazui 的 Blazor 后台管理模板 BlazAdmin 正式尝鲜

简介BlazAdmin 是一个基于Blazui的后台管理模板&#xff0c;无JS&#xff0c;无TS&#xff0c;非 Silverlight&#xff0c;非 WebForm&#xff0c;一个标签即可使用。  我将在下一篇文章讨论 Blazor 服务器端渲染与客户端渲染的基本原理&#xff0c;对比服务器端渲染与 WebFo…

蓝桥杯 123 二分+打表

参考代码&#xff1a; #include<bits/stdc.h> using namespace std; typedef long long ll; ll temp[1500000], sum[1500000]; //temp数组记录序号和&#xff0c;sum数组记录前缀和 ll cal(ll n) //计算自然数求和 {return (n1)*n/2; }int main() {ios::sync_with_s…

.Net Core使用Ocelot网关(二) -鉴权认证

前言上一章.Net Core使用Ocelot网关(一) -负载,限流,熔断,Header转换 已经简单的介绍了ocelot的使用了,但是网关暴露的接口如果什么人都能访问的话安全性就太低啦。所以我们需要去鉴权和认证。这里我们使用identityServer4给我们的网关来鉴权认证。创建Identity服务我们创建一个…

蓝桥杯 k倍区间 前缀和

参考代码&#xff1a; #include<bits/stdc.h> using namespace std; typedef long long ll; int array[100005], t[100005]; //array记录每个元素值&#xff0c;t记录取余k&#xff0c;各余数对应前缀和的数量 int main() {ios::sync_with_stdio(false); ll sum 0, c…

Kubernetes 的2020年“野望”

Kubernetes是一个用于部署容器化应用程序的开源容器编排系统&#xff0c;由Alphabet的GOOGL Google部门设计&#xff0c;其发展势头强劲&#xff0c;这得益于全球企业以指数级的速度生成数据之大势。Kubernetes支持在单个OS上无缝部署多个应用程序并实现诸如监视、调度、扩展这…

蓝桥杯 作物杂交 DFS搜索

参考代码&#xff1a; #include<bits/stdc.h> #define INF 0x3f3f3f3f using namespace std; typedef long long ll; int cost[2005]; //记录每个作物杂交所需要的时间 int dis[2005]; //记录每个作物到t点的最短时间 struct node{ //结构体存储每种杂交方案 int a…

微服务的时间和成本去哪儿了

2019 中国.NET 开发者峰会目前在国内的.NET社区还是很有影响力的&#xff0c;宣传的内容也都是比较新潮和前言的技术栈。有一个不争的现实是基本上主题都是关于.NET Core的&#xff0c;以及基于该主题之上的延展。比如ML.NET相关的机器学习&#xff1b;基于.NET Core的微服务实…

Leetcode 1109.航班预定统计 差分

思路&#xff1a; 这道题假如要用暴力的方法&#xff0c;是过不去的。要使用差分的思想&#xff0c;创建一个差数组。因为本道题初始的座位数是0&#xff0c;直接建立一个全0数组即可。 参考代码&#xff1a; class Solution { public:vector<int> corpFlightBookings(…

自定义滚动条(Custom ScrollBar)

时间如流水&#xff0c;只能流去不流回&#xff01; 点赞再看&#xff0c;养成习惯&#xff0c;这是您给我创作的动力&#xff01; 本文 Dotnet9 https://dotnet9.com 已收录&#xff0c;站长乐于分享dotnet相关技术&#xff0c;比如Winform、WPF、ASP.NET Core等&#xff0c;亦…

Leetcode 1094.拼车 差分

思路&#xff1a; 这道题有很多种解法&#xff0c;刚好最近在学差分&#xff0c;就用差分做吧。首先是初始没有乘客&#xff0c;差分diff数组各项为0&#xff0c;不用求差构造差分数组了。接着是每一次乘车方案&#xff0c;起点站需要加上乘客数&#xff0c;终点站需要减去乘客…

用ASP.NET Core构建可检测的高可用服务--学习笔记

摘要随着现代化微服务架构的发展&#xff0c;系统故障的定位与快速恢复面临着诸多挑战&#xff0c;构建可检测的服务&#xff0c;帮助线上保障团队时刻掌控应用的运行状况越来越重要。本次分享会讲解如何让 ASP .NET Core 应用与现代化云基础设施完美融合&#xff0c;提升服务的…

Leetcode 34.在排序数组中查找元素的第一个和最后一个位置 二分

第一种方法&#xff0c;比较简单&#xff0c;左边界查找使用C的upper_bound()函数&#xff0c;右边界从左边界开始往下查找。 参考代码&#xff1a; class Solution { public:vector<int> searchRange(vector<int>& nums, int target) {vector<int> re…

[功能发布]Excel催化剂2周年巨献-网页数据采集功能发布,满足90%合理场景使用...

转眼间&#xff0c;Excel催化剂推出已经两周年&#xff0c;在此之际&#xff0c;献上数据时代最刚需的网页采集功能&#xff0c;无需苦苦寻觅各种工具&#xff0c;借助Excel催化剂过往数据处理、清洗功能&#xff0c;加上此轮的网页采集功能&#xff0c;一点不输于市面上的各种…

Leetcode 35.搜索插入位置 二分

题目链接 思路&#xff1a; 是常规的二分法&#xff0c; 需要注意的是&#xff0c;当数字不存在的时候&#xff0c;需要返回插入该数进序列并保持有序的位置&#xff0c;即返回的是最后一个小于查找数target的位置。二分查找最后结束的位置&#xff0c;即退出循环时的左边界或…

.NET Core 微服务学习与实践系列文章目录索引(2019版)

Photo &#xff1a;.NET Core文 | Edison Zhou2018年&#xff0c;我开始学习和实践.NET Core&#xff0c;并开始了微服务的学习&#xff0c;以及通过各种开源组件搭建服务治理技术方案&#xff0c;并在学习过程中总结了一个.NET Core微服务学习与实践系列文章&#xff0c;涵盖了…

蓝桥杯 子串分值 递推

思路&#xff1a; 本题有点难想&#xff0c;采用贡献和的思想。首先需要定义一个last数组&#xff0c;用于记录当前遍历的字母s[i]上一次出现在字符串s中的位置。接着遍历数组&#xff0c;计算每一个字母的贡献值。 参考代码&#xff1a; #include<bits/stdc.h> #defi…