和次小生成树相似的套路
记f 为S 到所有点的最短路,g 为T 到所有点的最短路
枚举所有边
严格次小生成树[BJWC2010]
首先要知道怎么求非严格次小生成树
记为u,v 路径上的最大边权
先求一遍最小生成树,记权值为mins
然后枚举所有不在树中的边
非严格次小生成树的权值为
用倍增或树剖都可以求
现在要求严格次小的
于是记录的次大边权,保证其严格小于最大值,记为
然后依旧是枚举所有不在树中的边
若,则为,否则为
洛谷P2801 教主的魔法
想了好久发现套不了数据结构。
然后看了看数据范围用了分块。
分成个块,块内保持有序
对于M 操作,覆盖整块就打标记,否则暴力更新并重新排序
对于A 操作,覆盖整块就二分查找,否则暴力查找
复杂度