#P9663. [ICPC2021 Macao R] Permutation on Tree
[ICPC2021 Macao R] Permutation on Tree
题目描述
Given a tree with vertices where vertex is the root, we say a permutation of is good if it satisfies the following constraint:
- Let be the index of in the permutation (That is, ). For all , if vertex is an ancestor of vertex in the tree, then .
Define the score of a permutation to be where is the absolute value of . Calculate the sum of scores of all different good permutations.
输入格式
There is only one test case in each test file.
The first line contains two integers and (, ) indicating the size of the tree and the root.
For the following lines, the -th line contains two integers and () indicating an edge connecting vertex and in the tree.
输出格式
For each test case output one line containing one integer indicating the sum of scores of all different good permutations. As the answer may be large, output the answer modulo .
题目大意
【题目描述】
给定一个有 个顶点的树,其中顶点 是根,如果一个排列 满足以下约束条件,我们称其为好排列:
- 设 是排列中 的索引(即 )。对于所有 ,如果顶点 是树中顶点 的祖先,则 。
定义排列的分数为 ,其中 表示 的绝对值。计算所有不同好排列的分数之和。
【输入格式】
每个测试文件中包含一个测试用例。输入的第一行包含两个整数 和 (, ),表示树的大小和根。
接下来的 行,第 行包含两个整数 和 (),表示树中连接顶点 和 的边。
【输出格式】
对于每个测试用例,输出一行,包含一个整数,表示所有不同好排列的分数之和。由于答案可能很大,输出答案对 取模的结果。
【样例解释】
对于第一个样例测试用例,有三个好排列:、 和 。它们的分数分别为 、 和 ,因此答案为 。
对于第二个样例测试用例,只有一个好排列:。它的分数为 。
翻译来自于:ChatGPT。
4 2
1 2
2 3
1 4
15
3 1
1 2
2 3
2
提示
For the first sample test case, there are three good permutations: , and . Their scores are , and respectively so the answer is .
For the second sample test case, there is only one good permutation: . It's score is .