Processing math: 100%

随笔分类 -  0x19点分治

摘要:题目链接 #题目大意 ij是树上不同的两个点,计算下面公式的值 #解题思路1(点分治) 如果用点分治的话,很容易想到可以把重心当lca来计算子树间的贡献。因为题目是有根树,所以在点分治的过程中,可能会有某个子树的父子关系是颠倒的,不过对于点分治以重心u为根的子树来说,这种子树只会有 阅读全文
posted @ 2021-08-09 17:06 shuitiangong 阅读(81) 评论(0) 推荐(0) 编辑
摘要:题目链接 #题目大意 略 #解法1:点分治+归并排序+二分 对于当前的重心,首先对其一棵子树求距离,然后二分之前的子树中符合条件的距离的数量,然后用归并来降低排序的时间复杂度。 #代码 const int maxn = 1e4+10; int n, m, rt, tot, tota, totb, t 阅读全文
posted @ 2021-05-07 21:33 shuitiangong 阅读(56) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示