动态点分治
FSYo
我不去想是否能够成功,
既然选择了远方,
便只顾风雨兼程
展开
-
[WC2014] 紫荆花之恋 (点分树)(替罪羊树)(点分树定期重构)
关于求答案:对于每一个分治中心 ggg,求经过它的点对 (u,v)(u,v)(u,v) 的贡献需要 dis(u,g)+dis(v,g)≤ru+rvdis(u,g)+dis(v,g)\le r_u+r_vdis(u,g)+dis(v,g)≤ru+rv也就是 dis(u,g)−ru≤rv−dis(v,g)dis(u,g)-r_u\le r_v-dis(v,g)dis(u,g)−ru≤rv...原创 2019-10-28 16:15:12 · 211 阅读 · 0 评论 -
动态点分治 / 点分树学习笔记 ---- BZOJ3730 震波 / [ZJOI2017] 幻想乡的战略游戏 / [HNOI2015]开店
点分树就是将每一次的重心连起来, 形成一个深度不超过log的树相当于将点分治的过程静态到一颗树上实现如下, fa记录点分树上的父亲void Divide(int u, int f){ fa[u] = f; vis[u] = 1; int sum = Siz; for(int i=first[u];i;i=nxt[i]){ int t = to[i]; if(vis[t]) c...原创 2019-05-18 16:14:28 · 202 阅读 · 0 评论 -
暑假集训 ---- (树上)数据结构
ZJOI 2007 捉迷藏 一棵树,点权为 0/1,每次修改一个点的点权,询问两个最远的 1 的距离点分树每个点维护:到当前节点的最远距离,维护最大和次大拼起来的,和一个全局最大的#include<bits/stdc++.h>#define N 200050#define inf 0x3fffffffusing namespace std;int read(){ int...原创 2019-10-04 16:35:03 · 252 阅读 · 0 评论