首页 / 题库

P70032 - 古老典籍(ancient)

组合数学
通过次数2 提交次数26 内存限制 1024MB 时间限制3秒

描述

在浩瀚的星空之下,有一座古老的智慧神殿,殿中藏有一棵名为“真理之树”的圣物。这棵树共有n个节点,编号为1~n,其中节点1为根,每个节点都记载着一卷古老的典籍。

    传说中,只有按照某种特定的从根节点1开始的深度优先搜索(DFS)顺序阅读学习这些典籍,才能领悟其中的终极智慧。然而,守护神殿的贤者们留下了一条禁忌规则:对于给定的q对典籍(a,b),在阅读顺序中,节点a的典籍必须出现在节点b典籍之前。

    现在,你作为新一代的贤者继承者,需要计算:在遵守所有禁忌规则的前提下,一共有多少种不同的阅读顺序?

    由于答案可能非常巨大,你需要输出它对${10}^9+7$取模的结果。

输入

从文件ancient.in中读入数据。本题包含多组测试数据。

输入的第一行t,表示测试数据的组数。

对于每组测试数据内:

输入的第一行包含三个正整数 $n,q$,分别表示树的节点数,以及规则的数量。

接下来n行,其中第i行的第一个数字$c_i$表示节点i的儿子数量,接下来$c_i$个数字,分别为节点i的儿子编号。

接下来q行,每行两个整数a,b。表示典籍a的阅读顺序必须出现在典籍b之前。

输出

输出到文件ancient.out中。

输出$t$行,每行一个数字,表示符合规则的阅读顺序方案数,对${10}^9+7$取模。

样例

  • 复制
  • 复制

提示

样例包含两组测试数据,两组测试数据的树都如下图:

    其中第一组测试数据要求节点2的典籍必须出现在典籍3之前。有6种满足条件的DFS顺序:

    1,2,5,6,3,4

    1,2,6,5,3,4

    1,2,5,6,4,3

    1,2,6,5,4,3

    1,4,2,5,6,3

    1,4,2,6,5,3

    其中第二组测试数据相比第一组测试数据增加一条限制,为节点3的典籍必须出现在典籍5之前。上面6种DFS顺序均不能使得3在5之前,满足条件的DFS顺序数为0。

 

对于所有测试数据有:$1\le t\le5,1\le n\le5\times{10}^4,0\le q\le5\times{10}^4,0\le c_i\le15,a\neq b$。

测试点

$n\le$

$q\le$

$c_i\le$

特殊性质

1~3

10

10

10

 

4~5

10

10

10

$c_1=n-1$

6~7

30

30

10

 

8~9

${10}^2$

2

2

 

10~11

${10}^2$

${10}^2$

10

 

12~13

${10}^3$

0

10

 

14

${10}^3$

1

10

 

15~17

${10}^3$

${10}^3$

10

 

18

${10}^4$

${10}^4$

10

所有规则的a、b其中一个为1

19

${10}^4$

3

10

 

20

${10}^4$

${10}^4$

2

 

21~25

$5\times{10}^4$

$5\times{10}^4$

15

 

意见反馈

    最多上传3张图片,格式为JPG、PNG、JPEG,单张不超过5MB

    注册

    发送验证码

    密码必须包含数字、字母和特殊字符

    找回密码

    发送验证码

    密码必须包含数字、字母和特殊字符

    运行 ID:67149

    • 测试点1:Accepted
    • 用时:0 ms
    • 内存:288 kb
    • 测试点2:Accepted
    • 用时:0 ms
    • 内存:288 kb
    输入
    203
    输出
    203

    test

    测评信息

    错误.in文件下载

    错误.out文件下载

    运行 ID:67149

    2019-01-24 15:06:36