AT_abc173_f

一棵 \(n\) 个点的树,定义 \(f(l,r)\) 为由 \(l \sim r\) 的点构成的点集在树上形成的连通块个数,让你求 \(\sum_{l=1}^{n}\sum_{r=l}^{n} f(l,r)\)

\(e(l,r)\)表示l~r的点连的边数

\[\begin{align} \sum_{l=1}^{n}\sum_{r=l}^{n}f(l,r)&=\sum_{l=1}^{n}\sum_{r=l}^{n}(r-l+1)-e(l,r)\\ &=\sum_{l=1}^{n}\sum_{r=l}^{n}(r-l+1)-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\sum_{l=1}^{n}(n-l+1)(1-l)+\sum_{l=1}^{n}\frac{(l+n)}{2}*(n-l+1)-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\sum_{l=1}^{n}(n-l+1)\left(1-l+\frac{(l+n)}{2}\right)-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\sum_{l=1}^{n}\frac{(n-l+1)(n-l+2)}{2}-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\sum_{l=1}^{n}\frac{l+l^2}{2}-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\frac{\frac{(1+n)*n}{2}+\frac{n(n+1)(2n+1)}{6}}{2}-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ &=\frac{n(n+1)(n+2)}{6}-\sum_{l=1}^{n}\sum_{r=l}^{n}e(l,r)\\ \end{align} \]

我们来考虑每一条边对于答案的贡献,该边只在l<=u,v<=r时才会被计算,所以每一条边对答案的贡献为\(u(n-v+1)(u<v)\)

复杂度\(O(n)\)

posted @ 2025-02-08 19:53  ikusiad  阅读(5)  评论(0)    收藏  举报