#P6862. 随机树生成器(Random Tree Generator)

0

随机树生成器(Random Tree Generator)

随机树生成器(Random Tree Generator)

题目描述

小 R 有一个随机树生成器,其工作原理如下:

  • 输入 nn,则对于每个 1<i≤n1<i\le n,随机选择一个 [1,i)[1,i) 中的节点作为其父亲。返回这棵树。

给定 n,kn,k,小 R 想知道可能生成的所有 nn 个点的树中,kk 号点的度数和。

由于答案可能很大,请输出答案模 109+910^9+9 的值。

输入格式

本题有多组数据。

第一行一个整数,是数据组数 TT。

接下来 TT 行,每行两个正整数 n,kn,k。

输出格式

TT 行,每行一个整数,为这组数据的答案模 109+910^9+9 的值。

样例输入 #1

3
3 1
3 2
3 3

样例输出 #1

3
3
2

数据范围

【样例说明】

  • 数据 11:一共有两种情况,11 号点的度数分别为 1,21,2。因此答案为 33。
  • 数据 22:一共有两种情况,22 号点的度数分别为 1,21,2。因此答案为 33。
  • 数据 33:一共有两种情况,33 号点的度数均为 11。因此答案为 22。

【数据范围】

本题捆绑测试。

对于 100%100\% 的数据,1≤T≤1051\le T\le 10^5,1≤k≤n≤1071\le k\le n\le 10^7。详细数据范围如下。

  • Subtask 1(20 分):T≤50T\le 50,n≤8n\le 8。
  • Subtask 2(55 分):T=1T=1,n≤105n\le 10^5。
  • Subtask 3(20 分):T=1T=1。
  • Subtask 4(5 分):没有任何附加限制。

知识点与难度

本题涉及的知识点从属于 CSP-S,难度(CF Rating):1800。


测试点分布

Subtask 分值 测试点编号 说明
0 10 1 样例
1 20 2~7 小规模 T≤50, n≤8
2 30 8~15 中等规模 T≤1000, n≤10^5
3 40 16~25 满规模 T=10^5, n≤10^7 线性预处理测试

出处:原题链接