洛谷——P1746 离开中山路
P1746 离开中山路
题目背景
《爱与愁的故事第三弹·shopping》最终章。
题目描述
爱与愁大神买完东西后,打算坐车离开中山路。现在爱与愁大神在x1,y1处,车站在x2,y2处。现在给出一个n×n(n<=1000)的地图,0表示马路,1表示店铺(不能从店铺穿过),爱与愁大神只能垂直或水平着在马路上行进。爱与愁大神为了节省时间,他要求最短到达目的地距离(a[i][j]距离为1)。你能帮他解决吗?
输入输出格式
输入格式:
第1行:一个数 n
第2行~第n+1行:整个地图描述(0表示马路,1表示店铺,注意两个数之间没有空格)
第n+2行:四个数 x1,y1,x2,y2
输出格式:
只有1行:最短到达目的地距离
输入输出样例
3 001 101 100 1 1 3 3
4
说明
20%数据:n<=100
100%数据:n<=1000
#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#define N 1200
using namespace std;
char ch;
bool vis[N][N];
int n,sx,sy,ex,ey,ans;
]={,,,-},yy[]={,-,,};
int read()
{
,f=; char ch=getchar();
') ch=getchar();
+ch-'; ch=getchar();}
return x*f;
}
void dfs(int x,int y,int s)
{
if(x==ex&&y==ey)
{
ans=min(ans,s);
return ;
}
||y<||x>n||y>n||vis[x][y]) return ;
vis[x][y]=true;++s;
;i<;i++)
{
int fx=x+xx[i],fy=y+yy[i];
dfs(fx,fy,s);
}
vis[x][y]=false;
}
int main()
{
n=read();
;i<=n;i++)
;j<=n;j++)
{
cin>>ch;
') vis[i][j]=true;
}
sx=read(),sy=read(),ex=read(),ey=read();
ans=);
printf("%d",ans);
;
}
10分超时dfs
迷宫问题最好使用bfs,因为dfs可能会T的很惨、、
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 2200
using namespace std;
char ch;
bool vis[N][N];
]={,,,-},yy[]={,-,,};
],d[N][N];
int read()
{
,f=; char ch=getchar();
') ch=getchar();
+ch-'; ch=getchar();}
return x*f;
}
int main()
{
n=read();
;i<=n;i++)
;j<=n;j++)
{
cin>>ch;
') vis[i][j]=true;
}
sx=read(),sy=read(),ex=read(),ey=read();
memset(d,;
q[tail][]=sx,q[tail][]=sy,++tail;
while(head<tail)
{
],y=q[head][];
++head;
;}
;i<;i++)
{
int fx=x+xx[i],fy=y+yy[i];
||fx>n||fy>n) continue;
))
d[fx][fy]=d[x][y]+,q[tail][]=fx,q[tail][]=fy,++tail;
}
}
}
洛谷——P1746 离开中山路的更多相关文章
- 洛谷 P1746 离开中山路
P1746 离开中山路 题目背景 <爱与愁的故事第三弹·shopping>最终章. 题目描述 爱与愁大神买完东西后,打算坐车离开中山路.现在爱与愁大神在x1,y1处,车站在x2,y2处.现 ...
- 洛谷P1746 离开中山路
https://www.luogu.org/problemnew/show/P1746 思路:用广搜从起点开始,遍历所有可达的点,再往下遍历直到到达终点,所以能保证得到的结果一定是最优解 #inclu ...
- 洛谷评测机BUG(应该是)
此问题由洛谷p1746引出(之前出过类似问题没在意) 传送门 以下是两个差不多的程序,(只有main函数中的输入不同,第一个程序迷之WA,第二个程序AC) #include <bits/stdc ...
- 洛谷2583 地铁间谍 (UVa1025A Spy in the Metro)
洛谷2583 地铁间谍(UVa1025A Spy in the Metro) 本题地址:http://www.luogu.org/problem/show?pid=2583 题目描述 特工玛利亚被送到 ...
- 洛谷P1783 海滩防御 分析+题解代码
洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ...
- 洛谷 P2802 回家
题目链接 https://www.luogu.org/problemnew/show/P2802 题目描述 小H在一个划分成了n*m个方格的长方形封锁线上. 每次他能向上下左右四个方向移动一格(当然小 ...
- 洛谷P1342 请柬(SPFA)
To 洛谷.1342 请柬 题目描述 在电视时代,没有多少人观看戏剧表演.Malidinesia古董喜剧演员意识到这一事实,他们想宣传剧院,尤其是古色古香的喜剧片.他们已经打印请帖和所有必要的信息和计 ...
- 洛谷P2982 [USACO10FEB]慢下来Slowing down(线段树 DFS序 区间增减 单点查询)
To 洛谷.2982 慢下来Slowing down 题目描述 Every day each of Farmer John's N (1 <= N <= 100,000) cows con ...
- 洛谷 P3956 棋盘 解题报告
P3956 棋盘 题目描述 有一个\(m×m\)的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你所站在的位置必须是有颜色的(不能 ...
随机推荐
- 如何让升级时AppleHDA不再折腾
---前提--- 1. 你得用 Clover 引导 (......) 2. 开启 kernelcache (开了也能 inject kext,还能patch kext,速度又快,为啥不开) 3. 你的 ...
- mysqldump指令说明
3种形式mysqldump [OPTIONS] database [tables]mysqldump [OPTIONS] -B | --databases [OPTIONS] DB1 [DB2 DB3 ...
- linux各种终端类型的区别和概念
1 pty(虚拟终端或伪终端): 当我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端pty(pseudo-tty). 2 tty(终端设备的统称):tty一词源 ...
- day18-python之迭代器和生成器
1.文件处理模式b模式 #!/usr/bin/env python # -*- coding:utf-8 -*- # f=open('test.py','rb',encoding='utf-8') # ...
- (原) 剑指offer--之数值的整数次方
题目描述 给定一个double类型的浮点数base和int类型的整数exponent.求base的exponent次方. 初次看题觉得这题好简单,直接用库函数power()不就行了,仔细想了想,万 ...
- JavaScript括号中什么什么不加引号什么时候加引号?
*****我的QQ号:1539832180.欢迎一起讨论学习.***** 1.如果是你定义的变量,不能加引号. 因为在大多数语言里面,单引号(或双引号)里面的内容表示的都是字符串. 2.如果是你定义的 ...
- 二丶人生苦短,我用python【第二篇】
1 编码 python解释器在加载 .py 文件中的代码时,对内容默认进行ascill编码,因此存在中文会报错,所以需要告诉python解释器,用什么编码来执行源代码.) ASCII码,主要用于显示现 ...
- Linux下dpkg的用法
转自:http://blog.csdn.net/fireblue1990/article/details/52627952 dpkg是一个Debian的一个命令行工具,它可以用来安装.删除.构建和管理 ...
- [android开发篇]权限分类:正常权限和危险权限
https://developer.android.com/guide/topics/security/permissions.html#normal-dangerous 系统权限 本文内容 安全架构 ...
- 九度oj 题目1026:又一版 A+B
题目描述: 输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数. 输入: 输入格式:测试输入包含若干测试用例.每个测试用例 ...