YZOJ P2242 [ZJOI 2015]Substring
时间限制:1000MS 内存限制:524288KB
难度:\(8.0\)
-
题目描述
给出一棵 \(n\) 个节点、叶子不超过 \(20\) 个的树,每个节点上有 \(0\) 到 \(c-1\) 的数字。
树上任意两点 \(A\)、\(B\) 间的有向路径 \(A \rightarrow B\) 形成了一个字符串(\(A \rightarrow B\) 和 \(B \rightarrow A\) 构成的串相反)。
求总共有多少个互不相同的字符串。
-
输入格式
第一行两个数,\(n, c\) 。
第二行 \(n\) 个 \(0\)~\(c-1\) 间的数,表示每个节点的颜色。
接下来 \(n-1\) 行,每一行表示一条树边。
保证叶子个数不超过 \(20\)。
-
输出格式
一个整数,表示不同的字符串数。
-
样例输入
1 2 3 4 5 6 7 8 |
7 3 0 2 1 2 1 0 0 1 2 3 4 3 5 4 6 5 7 2 5 |
-
样例输出
1 |
30 |
-
数据规模与约定
\(1 \leq n \leq 10000, 1 \leq c \leq 10\) 。