随笔分类 - 圆方树
摘要:题目大意: 一个无向图 Q个询问 每次给一些点的集合 求有多少个点满足去掉这个点后使这些点的集合中有一个点对不连通 思路: 点双缩点 相当于每次求这些点中的所有路径上的圆点个数 可以将这些点按dfs序排序 每次求a i 和 a i+1两个点路径上的圆点个数 最后答案/2 后减去这些点的个数(因为不能
阅读全文
摘要:题目大意: 一个无向图 每个点有权值 支持两个操作 1 修改某个点的权值 2 查询a-b所有简单路径的点上的最小值 思路: 可以把图变成圆方树 然后树链剖分 维护 对于每个方点使用可删堆维护 1 #include<iostream> 2 #include<cstdio> 3 #include<cma
阅读全文
摘要:题目大意: 无向图上找三个点 a b c使存在一条从a到b经过c的路径 求取这三个点的方案数 思路: 建立圆方树 这个圆方树保证没有两个圆点相连或两个方点相连 对于每个节点x 设该节点为路径的中间节点 则a c要么同在一个子树内 要么一个在子树内另一个在子树外 最后对答案<<1 对于每个方点设val
阅读全文

浙公网安备 33010602011771号