洛谷P2802 回家 题解

博客讲述了作者在解决洛谷P2802问题时遇到的挑战,初始尝试通过广搜算法解决但因未考虑特殊情况而失败。经过思考,作者意识到在某些情况下需要绕路回血,导致血量和时间的变化,进而调整算法在判断和更新血量、时间上进行优化。最终通过增加终点判断成功解决了问题。
摘要由CSDN通过智能技术生成

在把所有坑都踩过一遍之后,终于A了(撒花✿✿ヽ(°▽°)ノ✿)

题面

解题思路

首先乍一看是一道裸的广搜,于是快乐的开了时间和血量两个二维数组,之后写了个pair的队列,之后快乐的提交,然后快乐的发现错了将近一半的点。于是细(xia)细(zai)一(shu)想(ju),发现有一种可能,就是说他有可能在一个地方绕一下路,去回个血,之后再转回来,所剩血量比原来高,所以不能无脑打vis标记,但是不打vis却又会绕圈子,那就只能在判断上下功夫了,就看如果转一圈之后所剩血量比原来还高,那就直接用换了的血量,于是加了个判断就交了,结果又Wa了,于是我又细(xia)细(zai)一(shu)想(ju),发现在更新血量的同时还要更新时间,因为绕一圈的时间明显比直接走的时间长,所以必须强制更新,不能用min,之后重复上述操作,然后又Wa了……最后在认(xia)真(zai)思(shu)考(ju)之后我发现必须是原来好好走(不绕圈吃血包)到不了终点才去绕圈(绕圈步数肯定比好好走多嘛),最后加了一个终点的判断才总算是A了。✿✿ヽ(°▽°)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值