bzoj 3482: [COCI2013]hiperprostor

本文探讨了在引入超空间旅行技术后,行星间食品运输的最短路径问题。通过定义f[i][j]为到达i点并经历j次超空间旅行的最短路径,作者提出了一种解决方法,该方法涉及构造直线并使用凸包算法来确定所有可能的最短路径时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题意

在遥远的未来,行星之间的食品运输将依靠单向的贸易路线。每条路径直接连接两个行星,且其运输时间是已知的。贸易商协会打算利用一项最近发现的新技术——超空间旅行,以增加一些新的航线。通过超空间旅行的航线也是单向的。由于该项技术仍处于试验阶段,超空间旅行的时间目前是未知的,但它不取决于行星之间的距离,所以每个超空间旅行的路线将花费等量的时间。下图是三个相互联通的行星及其运输时间的例子。行星使用正整数标号,超空间旅行时间记为“x”(图片对应第输入样例):过境的时间以天计,并且始终是一个正整数。贸易商协会希
望对引进新航线的后果进行分析:对于某两个行星A和B,他们想知道对于任意的x,从A到B的最短路径的总中转时间的所有可能的值。例如,在上述情况中,从星球2到星球1的最短路径所需时间可以取值5(如果x≥5),4,3,2,或1天(如果x<5)

前言

今天早上状态极差,什么题都想不出来QAQ
换了这题都不会,感觉药丸了

题解

一个显然的想法就是f[i][j]表示到i这个点,走了j个x的最短路
然而我一开始在这里不知道为什么纠结了很久,因为我觉得j是m级别的。。显然过不了。。
我真是大傻逼
然后得到这个以后,就得到了很多条直线
然后我居然不知道怎么求。。
其实就是一个凸包啊。。
我这都没反应过来,真是大傻逼。。

代码

我这大傻逼就不想打了。。
估计今天这状态要调很久

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值