其实我觉得这是一道比较综合的题吧...
这个题可供挖掘的性质很多,比如最短路最长是
\(n\)啊,答案序列中的两点之间的距离肯定是
\(p\)数组上这两个点的距离啊等等.
其实是在
\(p\)数组上进行了一次另类的最短子序列.图的条件其实就是限制了转移,然后再有一个有点意思的地方是
\(DP\)路径的记录.
我是不会记录路径的...(不知道自己为什么这么笨),参考了
\(dalao\)的代码才发现...用
\(tmp_i\)表示
\(i\)从谁转移过来就行了...最后一次转移一定属于最优解.
性质里面说的第二条就是这题特殊的转移限制条件.
于是,就有了这个代码:
#include #include #include #include #include #include #include #include #include