第二遍DFS时,忘记减去了 v 节点 本来的深度值,还有80pts
void dfs2(int u , int fa)
{
for (auto v : g[u])
{
if (v != fa)
{
f[v] += f[u] + n - size[v] - (size[v] + f[v]);
dfs2(v , u);
}
}
}
100pts
void dfs2(int u , int fa)
{
for (auto v : g[u])
{
if (v != fa)
{
f[v] += f[u] + n - size[v] - size[v];
dfs2(v , u);
}
}
}
80pts