【题解】「NOI2020」美食家

「NOI2020」美食家

图论+矩阵.

传送门

暴力DP

(乱推)

(其实是直接矩阵上手了)

矩阵优化($O(N^3KlogV)$)

最开始的思路是,要是这道题里的图没有边权就可以矩阵了。于是发现可以拆边:把边权为$z$的边拆成$z$条边,即建出$z-1$个虚拟节点,于是总节点数为$N=n+4m$。

矩阵乘法则定义为$C_{i,j}=max(A_{i,k}+B_{k,j})$,容易证明这样的定义满足结合律。矩阵快速幂即可$O(N^3KlogV)$得到答案。

得分45pts.

进一步优化($O(N^3KlogV)$)

我们发现可以改拆边为拆点,一个点可以建出$4$个虚拟节点,并将入边拆成这些节点。总点数变成$N=5n$。

得分75pts.

再进一步优化($O(N^3logV+N^2KlogV)$)

我们的答案矩阵,从第$1$秒滚到第$T$秒,似乎都只用到了第一行(只用考虑从$1$转移出的情况)。于是可以把答案矩阵化简成行向量,预处理快速幂,可做到行向量与矩阵相乘的快乐$O(n^2)$。

于是我们的复杂度变成了$O(N^3logV+N^2KlogV)$。

得分100pts.

原文地址:https://www.cnblogs.com/Asd-Okuu/p/13674499.html