Dev运行正常洛谷却编译失败求救!!!

本文讨论的是洛谷P2895问题,涉及流星雨和安全路径规划。贝茜需要在流星撞击后找到安全位置,问题转化为在二维网格中寻找最短路径。输入输出格式和样例给出,但遇到洛谷平台编译错误,寻求帮助。
摘要由CSDN通过智能技术生成

原题是洛谷P2895

题目描述

贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。

如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。

根据预报,一共有 M 颗流星 (1≤M≤50,000) 会坠落在农场上,其中第 i 颗流星会在时刻 Ti​ 砸在坐标为 (Xi​,Yi​)(0≤Xi​≤300, 0≤Yi​≤300) 的格子里。流星的力量会将它所在的格子,以及周围 4 个相邻的格子都化为焦土,当然贝茜也无法再在这些格子上行走。

贝茜在时刻 0 开始行动,它只能在第一象限中,平行于坐标轴行动,每 1 个时刻中,她能移动到相邻的(一般是 4 个)格子中的任意一个,当然目标格子要没有被烧焦才行。如果一个格子在时刻 t 被流星撞击或烧焦,那么贝茜只能在 t 之前的时刻在这个格子里出现。 贝西一开始在 (0,0)。

请你计算一下,贝茜最少需要多少时间才能到达一个安全的格子。如果不可能到达输出 −1。

输入格式

共 M+1 行,第 1 行输入一个整数 M,接下来的 M 行每行输入三个整数分别为 Xi​,Yi​,Ti​。

输出格式

贝西到达安全地点所需的最短时间,如果不可能,则为 −1。

输入输出样例

输入 #1

4
0 0 2
2 1 2
1 1 2
0 3 5

输出 #1

5
 
#include <cstdio>
#include <iostream>
#include <cstring>
using std::cout;
using std::cin;

int m;
int map[310][310],lx[310][310],vis[310][310],time[310][310];
//map中的数代表该位置多久后会因陨石袭击无法通行 若值为-1表示此地是安全地点 
//lx表示此地多久后会落下流星 初值为0不影响 后面是按照陨石落点查询该数组
//vis值为1表示已经走过
//time表示到达此地所需的最短时间 
const int dx[]={0,0,1,-1,0};
const int dy[]={1,-1,0,0,0};
struct Node{
	int x,y;
}q[91000];
 
void bfs(int a,int b){
	int head=0,tail=1;
	q[1].x=a;q[1].y=b;vis[a][b]=1;
	while(head<tail){
		head++;
		for(int i=0;i<4;i++){
			int xx=q[head].x+dx[i];
			
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值