[省选联考 2022] 填树(暂无数据)
题目背景
2 s
512 MiB
题目描述
有一棵 nnn 个节点的无根树,刚开始树上每个节点的权值均为 000。KK 想对这棵树进行一些修改,他会任选一个节点作为初始的当前节点,然后重复以下动作:
- 将当前节点 iii 的权值修改为一个正整数 xxx,需满足 li≤x≤ril_i \leq x \leq r_ili≤x≤ri。其中 li,ril_i, r_ili,ri 是输入中给出的两个正整数。
- 结束修改过程,或移动到一个与当前节点相邻的权值为 000 的节点(如果不存在这样的节点,则必须结束修改过程)。
现在 KK 有两个问题:
-
在修改结束后,可以得到多少棵不同的树,满足树上非零权值的最大值和最小值的差小于等于 KKK?其中 KKK 是输入中给出的一个正整数。
-
这些满足条件的树的权值之和为多少?(树的权值定义为这棵树上所有节点的权值之和)
你需要输出这两个问题的答案模 109+710^9 + 7109+7。我们认为两棵树不同当且仅当至少存在一个节点的权值不同。
温馨提示:
- KK 至少会修改一个节点(初始节点)。
- 实质上 KK 会修改树上的任意一条路径,最后需要满足这条路径上的点的权值最大值和最小值之差小于等于 KKK。
输入格式
第一行两个正整数 n,Kn, Kn,K,表示节点数和权值差的最大值。
接下来 nnn 行,每行两个正整数 li,ril_i, r_ili,ri,表示第 iii 个节点修改后权值的最小值和最大值。
接下来 n−1n - 1n−1 行,每行两个正整数 ui,viu_i, v_iui,vi,表示节点 uiu_iui 和 viv_ivi 之间有一条边。数据保证形成一棵树。
输出格式
输出两行,每行一个整数,分别表示第一问和第二问的答案模 109+710^9 + 7109+7 的值。注意,如果你不打算回答第二问,请在第二行任意输出一个整数。如果输出文件只有一行,则会因格式不符合要求被判 000 分。
输入输出样例
样例输入1
3 1
2 3
3 5
4 6
1 2
1 3
样例输出1
14
78
样例输入2
见附件中的 tree/tree2.in
样例输出2
见附件中的 tree/tree2.ans
样例输入3
见附件中的 tree/tree3.in
样例输出3
见附件中的 tree/tree3.ans
说明/提示
【样例解释 #1】
| 111 | 222 | 333 | 444 | 555 | 666 | 777 | 888 | 999 | 101010 | 111111 | 121212 | 131313 | 141414 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 节点 111 | 222 | 333 | 222 | 333 | 333 | 333 | 333 | 333 | 000 | 000 | 000 | 000 | 000 | 000 |
| 节点 222 | 000 | 000 | 333 | 333 | 444 | 000 | 444 | 333 | 333 | 444 | 555 | 000 | 000 | 000 |
| 节点 333 | 000 | 000 | 000 | 000 | 000 | 444 | 444 | 444 | 000 | 000 | 000 | 444 | 555 | 666 |
表格中列出了全部 141414 棵满足条件的树,将这些树的权值加起来为 787878。
【数据范围】
对于 100%100\%100% 的数据,1≤n≤2001 \leq n \leq 2001≤n≤200,1≤li≤ri≤1091 \leq l_i \leq r_i \leq {10}^91≤li≤ri≤109,1≤K≤1091 \leq K \leq {10}^91≤K≤109。
| 测试点 | $n \leq $ | ri,K≤r_i, K \leqri,K≤ | 其他限制 |
|---|---|---|---|
| 111 | 555 | 101010 | 无 |
| 222 | 303030 | 10910^9109 | 无 |
| 333 | 303030 | 10910^9109 | 无 |
| 444 | 303030 | 500500500 | 无 |
| 555 | 200200200 | 200000200000200000 | 无 |
| 666 | 200200200 | 200000200000200000 | 无 |
| 777 | 200200200 | 10910^9109 | A |
| 888 | 200200200 | 10910^9109 | A |
| 999 | 200200200 | 10910^9109 | 无 |
| 101010 | 200200200 | 10910^9109 | 无 |
特殊限制 A:所有点构成一条链, 编号为 iii 的点和编号为 i+1i + 1i+1 的点之间有连边
【评分方式】
本题共 101010 个测试点,每个测试点 101010 分。其中回答正确第一问可得 777 分,回答正确第二问可得 333 分。

该题目描述了一种无根树的权值修改操作,用户KK可以在树上选择一个节点,将其权值修改在给定范围内,并移动到相邻的权值为0的节点。目标是计算满足权值最大值与最小值差不超过K的所有不同树的数量及其权值之和,答案模10^9+7。输入包括节点数、权值差最大值、节点的修改范围和边的信息。输出要求包含两部分:符合条件的树的数量和权值之和。数据范围涉及节点数、修改范围和K的限制。
717

被折叠的 条评论
为什么被折叠?



