news 2026/2/12 3:56:52

算法竞赛备考冲刺必刷题(C++) | 洛谷 P1746 离开中山路

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
算法竞赛备考冲刺必刷题(C++) | 洛谷 P1746 离开中山路

本文分享的必刷题目是从蓝桥云课洛谷AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。

欢迎大家订阅我的专栏:算法题解:C++与Python实现!

附上汇总贴:算法竞赛备考冲刺必刷题(C++) | 汇总


【题目来源】

洛谷:P1746 离开中山路 - 洛谷 (luogu.com.cn)

【题目描述】

爱与愁大神买完东西后,打算坐车离开中山路。现在爱与愁大神在x 1 , y 1 x_1,y_1x1,y1处,车站在x 2 , y 2 x_2,y_2x2,y2处。现在给出一个n × n ( n ≤ 1000 ) n \times n(n \le 1000)n×n(n1000)的地图,0 00表示马路,1 11表示店铺(不能从店铺穿过),爱与愁大神只能垂直或水平着在马路上行进。爱与愁大神为了节省时间,他要求最短到达目的地距离(每两个相邻坐标间距离为1 11)。你能帮他解决吗?

【输入】

1 11行包含一个数n nn

2 22行到第n + 1 n+1n+1行:整个地图描述(0 00表示马路,1 11表示店铺,注意两个数之间没有空格)。

n + 2 n+2n+2行:四个数x 1 , y 1 , x 2 , y 2 x_1,y_1,x_2,y_2x1,y1,x2,y2

【输出】

只有1 11行,即最短到达目的地距离。

【输入样例】

3 001 101 100 1 1 3 3

【输出样例】

4

【算法标签】

《洛谷 P1746 离开中山路》 #模拟# #搜索# #广度优先搜索BFS# #队列#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;constintN=1005;// 定义最大网格大小structNode{intx,y,s;// 坐标(x,y)和步数s};intn,a[N][N],x_1,y_1,x_2,y_2,vis[N][N];// 网格大小n,地图a,起点终点坐标,访问标记intdx[4]={-1,1,0,0},dy[4]={0,0,-1,1};// 上下左右四个方向voidbfs(){queue<Node>q;// BFS队列q.push({x_1,y_1,0});// 起点入队vis[x_1][y_1]=1;// 标记起点已访问while(q.size())// 队列不为空时循环{Node t=q.front();// 取队首q.pop();// 出队if(t.x==x_2&&t.y==y_2)// 到达终点{cout<<t.s;// 输出步数return;}for(inti=0;i<4;i++)// 遍历四个方向{intnx=t.x+dx[i],ny=t.y+dy[i];// 计算下一个位置// 边界检查、访问检查、障碍检查if(nx<1||nx>n||ny<1||ny>n||vis[nx][ny]==1||a[nx][ny]!=0)continue;vis[nx][ny]=1;// 标记已访问q.push({nx,ny,t.s+1});// 新位置入队,步数+1}}}intmain(){cin>>n;// 输入网格大小for(inti=1;i<=n;i++)for(intj=1;j<=n;j++)scanf("%1d",&a[i][j]);// 按字符读入数字,避免空格问题cin>>x_1>>y_1>>x_2>>y_2;// 输入起点终点坐标bfs();// 执行BFS搜索return0;}

【运行结果】

3 001 101 100 1 1 3 3 4
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/8 3:58:28

AI侦测模型热更新:云端无缝切换新版本,服务0中断

AI侦测模型热更新&#xff1a;云端无缝切换新版本&#xff0c;服务0中断 1. 为什么需要模型热更新&#xff1f; 想象一下你正在玩一个在线游戏&#xff0c;突然服务器维护停机了&#xff0c;所有玩家都被踢出游戏。这种体验很糟糕吧&#xff1f;对于AI侦测模型的运维团队来说…

作者头像 李华
网站建设 2026/2/5 22:24:06

没GPU怎么跑AI实体检测?云端镜像5分钟部署,2块钱玩转

没GPU怎么跑AI实体检测&#xff1f;云端镜像5分钟部署&#xff0c;2块钱玩转 引言&#xff1a;当毕设遇到显卡危机 距离答辩只剩两周&#xff0c;你的笔记本却只有集成显卡&#xff0c;而GitHub上的实体检测模型要求CUDA11.7——这可能是很多大学生做毕设时的真实噩梦。我见过…

作者头像 李华
网站建设 2026/2/4 22:43:45

nodejs基于Vue技术的幼儿园管理系统_4un3j

文章目录技术架构与框架选择核心功能模块设计性能优化与安全策略扩展性与维护性考虑实际应用价值--nodejs技术栈--结论源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;技术架构与框架选择 Node.js作为后端运行环境&#xff0c;结合Expr…

作者头像 李华
网站建设 2026/2/10 15:13:36

nodejs基于Vue框架的文旅文化旅游管理系统_524q8

文章目录系统概述技术架构核心功能模块扩展性与安全应用价值--nodejs技术栈--结论源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;系统概述 Node.js与Vue框架结合的文旅文化旅游管理系统旨在通过现代化技术提升文化旅游行业的管理效率与…

作者头像 李华
网站建设 2026/2/10 9:51:53

Oracle E-Business Suite认证前远程代码执行漏洞(CVE-2025–61882) 深度解析

CVE-2025–61882 — Oracle E-Business Suite 认证前RCE漏洞利用 Oracle E-Business Suite (版本 12.2.3 至 12.2.14) 中存在一个关键的认证前远程代码执行漏洞&#xff0c;攻击者可以通过恶意HTTP请求完全控制受影响的服务器——目前该漏洞已在野外被主动利用。 简要说明 CVE-…

作者头像 李华