luogu#P10064. [SNOI2024] 公交线路

[SNOI2024] 公交线路

题目描述

给定一棵 nn 个点的无根树。我们希望在一些点对之间修建公交线路,满足任意两个点之间只需要至多两条公交线路就能到达。

形式化地说,考虑树上的所有 n(n1)2\frac{n (n - 1)}{2} 条两个端点不同的简单路径。对于这些路径的一个子集 SS,称它是好的当且仅当:

  • 考虑一张新的图 GG,对于一对点 u,vu, v,当且仅当存在 SS 中的一条路径 PP,满足 uuvv 都在 PP 上,我们会在 u,vu, v 之间连上边权为 11 的无向边。
  • 要求 GG 中任意两点之间的距离都不超过 22

你需要求出有多少个子集 SS 是好的。由于答案可能很大,输出对 998244353998244353 取模的结果。

输入格式

第一行,一个正整数 nn 表示节点个数。
接下来 n1n - 1 行,每行两个正整数 u,vu, v,表示一条树边 (u,v)(u, v)

输出格式

输出一个整数,表示答案对 998244353998244353 取模的结果。

3
1 2
2 3

5

6
1 2
2 3
2 4
3 5
3 6

27296

提示

【样例 #1 解释】

对于对于第一个样例,所有可行的方案为 $\{(1, 3)\}, \{(1, 3), (1, 2)\}, \{(1, 3), (2, 3)\}, \{(1, 3), (1, 2), (2, 3)\}, \{(1, 2), (2, 3)\}$。


【样例 #3】

见附件中 bus/bus3.inbus/bus3.ans

这个样例满足测试点 111411 \sim 14 的条件限制。


【样例 #4】

见附件中 bus/bus4.inbus/bus4.ans

这个样例满足测试点 192019 \sim 20 的条件限制。


【数据范围】

对于所有的数据,保证 1n30001 \le n \le 3000

具体如下:

测试点编号 nn \le 特殊性质
131 \sim 3 66
474 \sim 7 1010
8108 \sim 10 30003000 A
111411 \sim 14 100100
151815 \sim 18 500500
192019 \sim 20 30003000

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