解题报告(5)——流星雨

本文介绍了一道关于流星雨问题的算法解题报告。题目要求计算奶牛贝茜在流星雨中到达安全区域所需的最短时间。通过预处理每个格子的毁坏时间,使用广度优先搜索策略寻找安全路径。若无法找到安全路径,则输出-1。题目难点在于考虑格子可能因先前的流星而提前被毁。
摘要由CSDN通过智能技术生成

流星雨

题目描述

贝茜听说了一个骇人听闻的消息,一场流星雨即将袭击整个农场,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽,届时将会对它撞到的一切东西造成毁灭性的打击。很自然地,贝茜开始担心自己的安全问题。以FJ牧场中最聪明的奶牛的名誉起誓,她一定要在被流星砸到前,到达一个安全的地方(也就是说,一块不会被任何流星砸到的土地)。如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。

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

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

输入格式

第 1 行: 1个正整数:M
第 2.. M+1行: 第 i+1 行为 3 个用空格隔开的整数:X_i,Y_i,以及 T_i

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值