摘要: 点分治 因为树上的路径只有两种,经过根的和没有经过根的,所以可以以根进行分治计算. 1. 找重心. 2. 以重心为根,计算经过根的答案. 3. 分治根的每颗子树. POJ 1741 cpp include include include include define ll long long usi 阅读全文
posted @ 2019-10-06 20:01 新新人類 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 最小树形图 个人理解就是求指定起点的有向图的最小生成树。 算法的大概步骤如下: 1. 遍历所有边,求得一步到达点v的距离in[v]和前驱pre[v].(若除根节点外有的点不可以被到达则无解) 2. 遍历所有点v,ans+in[v] (相当于从离v最近的点走到了v),看其是否在环上(一直跑pre,能跑 阅读全文
posted @ 2019-10-06 15:51 新新人類 阅读(295) 评论(0) 推荐(0) 编辑