CF995F Cowmpany Cowmpensation
题目描述
Allen 毕业于 MOO 技术学院(MIT),现在创办了一家初创公司!Allen 是公司的总裁。他还雇佣了 $n-1$ 名其他员工,每位员工都被分配了一位直属上级。如果 $u$ 是 $v$ 的上级,$v$ 又是 $w$ 的上级,那么 $u$ 也是 $w$ 的上级。此外,不存在 $u$ 和 $v$ 使得 $u$ 是 $v$ 的上级且 $v$ 也是 $u$ 的上级。Allen 自己没有上级。Allen 的员工编号为 $1$,其他员工的编号为 $2$ 到 $n$。
最后,Allen 需要为公司中的每位员工(包括他自己)分配工资。由于预算限制,每位员工的工资都是 $1$ 到 $D$ 之间的整数。此外,任何员工的工资都不能严格高于其上级。
请你帮助 Allen 计算分配工资的方案数。由于答案可能很大,请输出对 $10^9+7$ 取模后的结果。
输入格式
输入的第一行包含两个整数 $n$ 和 $D$($1 \le n \le 3000$,$1 \le D \le 10^9$)。
接下来的 $n-1$ 行,每行包含一个正整数,第 $i$ 行包含整数 $p_i$($1 \le p_i \le i$)。$p_i$ 表示员工 $i+1$ 的直属上级编号。
输出格式
输出一个整数,表示分配工资的方案数,对 $10^9+7$ 取模。
说明/提示
在第一个样例中,员工 2 和 3 直接向 Allen 汇报。三个人的工资(按顺序)可以是 $(1,1,1)$、$(2,1,1)$、$(2,1,2)$、$(2,2,1)$ 或 $(2,2,2)$。
在第二个样例中,员工 2 向 Allen 汇报,员工 3 向员工 2 汇报。按顺序,可能的工资分配为 $(1,1,1)$、$(2,1,1)$、$(2,2,1)$、$(2,2,2)$、$(3,1,1)$、$(3,2,1)$、$(3,2,2)$、$(3,3,1)$、$(3,3,2)$、$(3,3,3)$。
由 ChatGPT 4.1 翻译