摘要: 【题意】给定n个点的带边权树,对于树上存在的若干特殊点,要求任选一个点开始将所有特殊点走遍后返回。现在初始没有特殊点,m次操作每次增加或减少一个特殊点,求每次操作后的总代价。n,m<=10^5。 【算法】虚树+DFS序+set 【题解】每次询问相当于求两倍虚树路径和。 模拟虚树上dfs序的转移会发现 阅读全文
posted @ 2018-02-25 21:57 ONION_CYC 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定n个点的带边权树,每次询问给定ki个特殊点,求隔离点1和特殊点的最小代价。n<=250000,Σki<=500000。 【算法】虚树+DP 【题解】考虑普通树上的dp,设f[x]表示隔离1和子树x内特殊点的最小代价,val[x]表示x到1路径上的最小代价(预处理)。 点x特殊,f[x]= 阅读全文
posted @ 2018-02-25 21:09 ONION_CYC 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定n,求Σφ(i),n<=10^10。 【算法】杜教筛 【题解】 定义$s(n)=\sum_{i=1}^{n}\varphi(i)$ 杜教筛$\sum_{i=1}^{n}(\varphi *I)(i)=\sum_{i=1}^{n}\sum_{d|i}\varphi(d)=\sum_{i=1 阅读全文
posted @ 2018-02-25 14:37 ONION_CYC 阅读(332) 评论(0) 推荐(0) 编辑