CF1801D 题解

小清新短代码图论题,看着像是不可做题,但实际上只要用到性质分析、一点点贪心以及迪杰斯特拉算法的加维应用。

我们首先有结论:对于一条路径,假设扩展边的时候费用不够,肯定是从这条路径上 $w_i$ 最大的城市进行演出。

由于是能不演出就不演出,故而我们认为路径上 $w_i$ 最大值相等的两种方案演出次数少者胜,其次再按剩余钱数来比较。

注意我们是有条件的:路径上 $w_i$ 最大值相等的两种方案进行比较。故而我们不妨在原本基础的迪杰斯特拉最短路算法上多加一个维度:路径上 $w_i$ 最大值。这样就方便求解方便转移了。

时间复杂度 $O(n^2 \log m + nm \log m)$ 级别。

代码

posted @ 2023-03-15 21:01  徐子洋  阅读(16)  评论(0)    收藏  举报  来源