960f专题

CodeForces 960F: Pathwalks 主席树 + DP

传送门 题目描述 给定n 个点m 条边的有向图,可能不连通,可能有重边,也可能会有自环。求最长的路径(可以经过重复节点),使得这条路径的编号和权值都严格单调递增,其中编号指输入的顺序。路径的长度是指经过边的数量。 分析 一开始的思路是按边的顺序建图,后来发现不好去维护,后来发现我们可以在主席树上做DP 我们首先把每一个点建一颗权值线段树,每棵树的叶子结点表示到这个点,最后一段距离是j的最大