Tree: edges (,), (,), (,).
First DFS from node : size = {:, :, :, :}. Sum from node : distances are {:, :, :, :}, total = .
When you reroot from to : nodes in 's subtree (,) get closer, nodes outside (,) get farther. New sum = - + = .
This increment formula lets you compute all answers in instead of naive BFS from each node.