A93170.「SNOI2024」公交线路
NOI/NOI+/CTSC
官方
通过率:0%
时间限制:1.50s
内存限制:1024MB
题目描述
给定一棵 n 个点的无根树。我们希望在一些点对之间修建公交线路,满足任意两个点之间只需要至多两条公交线路就能到达。
形式化地说,考虑树上的所有 2n(n−1) 条两个端点不同的简单路径。对于这些路径的一个子集 S,称它是好的当且仅当:
- 考虑一张新的图 G,对于一对点 u,v,当且仅当存在 S 中的一条路径 P,满足 u 和 v 都在 P 上,我们会在 u,v 之间连上边权为 1 的无向边。
- 要求 G 中任意两点之间的距离都不超过 2。
你需要求出有多少个子集 S 是好的。由于答案可能很大,输出对 998244353 取模的结果。
输入格式
第一行,一个正整数 n 表示节点个数。
接下来 n−1 行,每行两个正整数 u,v,表示一条树边 (u,v)。
输出格式
输出一个整数,表示答案对 998244353 取模的结果。
输入输出样例
输入#1
3 1 2 2 3
输出#1
5
输入#2
6 1 2 2 3 2 4 3 5 3 6
输出#2
27296
说明/提示
对于所有的数据,保证 1≤n≤3000。
具体如下:
| 测试点编号 | n≤ | 特殊性质 |
|---|---|---|
| 1∼3 | 6 | |
| 4∼7 | 10 | |
| 8∼10 | 3000 | A |
| 11∼14 | 100 | |
| 15∼18 | 500 | |
| 19∼20 | 3000 |
特殊性质 A:保证树是一条链。