题目链接:传送门
找到一个点使删除这个点后图中的最长路最短
DAG——->拓扑
好吧第一步就挂掉了
标签线段树主席树?
好像线段树确实也能做
设f[i]表示到达i的最长路
ff[i]表示从i出发的最长路
一条最长路(起点fr,终点ca)一定等于 f[fr]+ff[ca]+1
所以做法就出来了
枚举每个点用一个堆来维护每个节点的贡献
可以删去和插入和询问最大值
记着最后把那个+1减掉
1 | /** |
题目链接:传送门
找到一个点使删除这个点后图中的最长路最短
DAG——->拓扑
好吧第一步就挂掉了
标签线段树主席树?
好像线段树确实也能做
设f[i]表示到达i的最长路
ff[i]表示从i出发的最长路
一条最长路(起点fr,终点ca)一定等于 f[fr]+ff[ca]+1
所以做法就出来了
枚举每个点用一个堆来维护每个节点的贡献
可以删去和插入和询问最大值
记着最后把那个+1减掉
1 | /** |
v1.5.2