笔记一下动态MST离线的分治做法

R过程
      把所有L,R中修改的边标记为-inf
      做一次MST
      把在MST上的非-inf边连接的点缩掉
      标记复原
C过程
      把所有L,R中修改的边标记为+inf
      做一次MST
      把不在MST上的非inf边永久删除
      标记复原

执行R-C过程 可将点与边缩到与当前问题规模同阶

注意维护并查集的时候储存之前的状态 便于recover(写个strcut就很方便了..)

来源:副队

你可能感兴趣的:(noip)