luogu#P11956. 「ZHQOI R1」树图

    ID: 36113 远端评测题 1500ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>树状数组O2优化树的直径树论洛谷比赛

「ZHQOI R1」树图

题目背景

树的生成图的生成树的生成图的生成树的生成图的生成树的生成图的生成树的生成图的生成树……

题目描述

定义一棵树 TT 的生成图 GG 为一个无向完全图,其中点 ii 与点 jj 的边权为 TTiijj 的距离。

定义一棵树 TTf(T)f(T)TT 的生成图的最大生成树的边权和。

你有一棵以 11 为根的树 TT,边权全为 11,有 qq 次操作,每次加一个叶子。你需要在操作前及每次操作后求出 f(T)f(T)

输入格式

第一行,两个整数 n,qn,q

n1n-1 行,每行两个数 u,vu,v,表示一条连接 u,vu,v 的边。

qq 行,其中第 ii 行一个整数 xx,表示在编号为 xx 的点下挂一个编号为 n+in+i 的点。

输出格式

输出 q+1q+1 行,表示操作前及每次操作后的 f(T)f(T)

6 5
1 2
1 3
1 4 
2 5
2 6
4
3
7
6
8
13
19
23
33
41
47

提示

【数据范围】

本题采用捆绑测试。

对于所有数据:1n,q2×1051\le n,q\le 2\times 10^5,保证刚开始给的是一棵树。

子任务编号 nn\le qq\le 特殊性质 分数
1 100100 1010
2 20002000
3 2×1052\times 10^5 55
4 2×1052\times 10^5 A
5 B
6 C
7 10510^5
8 2×1052\times 10^5 3030

特殊性质 A:保证树一直是一条链。

特殊性质 B:保证每次操作的叶子的父亲都是 11

特殊性质 C:保证树均匀随机生成,每次加的点的父亲从已有的点中均匀随机生成。