ARC230A题解

ARC230A - Meeting on Tree

得分:\(600\) 分

问题描述

给定 一棵有 \(N\) 个顶点的树,顶点编号为 \(1,2,\dots, N\)。对于 \(i=1,2,\dots, N-1\),第 \(i\) 条边连接顶点 \(u_i\) 和 \(v_i\)。

树的每个顶点上都有一只松鼠。松鼠们试图举行一次会议,其流程如下。

  1. 选择一个或多个松鼠参加会议。
  2. 被选中的松鼠互相协商,并选择树上的一个顶点作为会议地点。
  3. 每只被选中的松鼠沿树的边移动,直到到达会议地点。

松鼠的移动会产生与其经过的边数相等的代价。我们将会议的代价定义为被选中参加的松鼠的移动代价之和。松鼠们希望选择会议地点,使会议的代价最小化。

有 \(2^N-1\) 种方式选择一个或多个松鼠参加会议。求所有这些方式中,在合理选择会议地点时会议代价的最小值的和,并对 \(998244353\) 取模。

约束条件

  • \(2\le N\le 3\times 10^5\)
  • \(1\le u_i,v_i\le N\)
  • 给定的图是一个树。
  • 所有输入值都是整数。

解法:

好题,首先第一步就需要一定观察力。

我们对于每一条边,思考它会被经过多少次。

设一端有 \(A\) 只松鼠,另一端有 \(B\) 只松鼠,那么这条边至少会被经过 \(min(A,B)\) 次。

我们猜测刚好能够取到下限,事实上,由于选择位置任意,这一点是可以满足的。

由于选取方案涵盖所有可能,所以一条边产生的贡献就是:

\[\sum_{a=0}^{A} \sum_{b=0}^{B} \min(a,b) \binom{A}{a} \binom{B}{b} \]

分开:

\[\sum_{a=0}^{A} \sum_{b=0}^{B} [a\le b] a \binom{A}{a} \binom{B}{b} + \sum_{a=0}^{A} \sum_{b=0}^{B} [a> b] b \binom{A}{a} \binom{B}{b} \]

求解第一个式子:

吸收:

\[⇒\sum_{a=0}^{A} \sum_{b=0}^{B} [a\le b] A \binom{A-1}{a-1} \binom{B}{b}\\\\ ⇒A\sum_{a=0}^{A} \sum_{b=0}^{B} [a\le b] \binom{A-1}{a-1} \binom{B}{b} \]

遇到 \([a\le b]\) 这种,考虑下标代换:

令 \(i=b-a\) ,则 \(b=i+a\) 。

\[⇒A \sum_{a=0}^{A} \sum_{i=0}^{B-a} \binom{A-1}{a-1} \binom{B}{i+a} \]

上限看着不爽,直接换成 \(∞\) ,组合数超过了自然为 \(0\) 。

\[⇒A \sum_{a=0}^{∞} \sum_{i=0}^{∞} \binom{A-1}{a-1} \binom{B}{i+a} \]

还是做不了,但注意到两边都有一个 \(a\) ,我们想办法把这个搞掉。

先交换求和顺序:

\[⇒A \sum_{i=0}^{∞} \sum_{a=0}^{∞} \binom{A-1}{a-1} \binom{B}{i+a} \]

利用组合数对称性:

\[⇒A \sum_{i=0}^{∞} \sum_{a=0}^{∞} \binom{A-1}{A-a} \binom{B}{i+a} \]

用一个范德蒙德卷积(我是初次了解):

\[⇒A \sum_{i=0}^{∞} \binom{A-1+B}{A+i} \]

由于 \(A+B-1=n-1\) ,所以:

\[⇒A \sum_{i=0}^{∞} \binom{n-1}{A+i} \]

预处理就行了。\(O(n)\) 。

另外一个式子完全同理。

posted @ 2026-10-18 15:19  wlhao  阅读(5)  评论(0)    收藏  举报