#D. 图灵王的常青树

    远端评测题 1000ms 512MiB

图灵王的常青树

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

一个皮肤黢黑的高大男子站在悬崖峭壁旁。
随着他的眼光望去,只见一颗伟岸高大的参天古树。
男子缓缓的低下头,开始了沉思。

题目描述

图灵王的古树是一棵编号为 1n1 \sim n 的树,这棵树上每个点都有一个点权,同时有些边有边权,有些边没有边权。但是随着悠久的岁月,古树上面的点权都消失了。图灵王只知道点权都是整数,而且在 llrr 之间(包含端点)。而且,点权和边权有着下面的特殊关系:

  • 对于任一条输入进来的边,若op = 1,则为有边权的边,要求连接的两个点的点权和为边权
  • 对于任一条输入进来的边,若op = 0,则为没有边权的边没有任何要求

图灵王现在在思考这棵树有多少种不同的点权填写方式。两种填写方式不同,当且仅当至少存在一个点的点权不同。

图灵王请求勇者来帮他解决这个问题。

输入格式

本题有多组测试数据。

第一行一个整数 TT,代表测试数据组数。

对于每一组测试数据:

第一行三个整数 n,l,rn,l,r,代表树上点的个数是 nn,点权的范围是 [l,r][l,r]

接下来 n1n-1 行,每行先输入一个整数 opopop=0op=0 表示这条边没有边权,op=1op=1 表示这条边有边权。

  • 如果 op=0op=0,再输入两个整数 u,vu,v,表示这条边连接 u,vu,v 两个点。
  • 如果 op=1op=1,再输入三个整数 u,v,wu,v,w,表示有一条权值为 ww 的边连接 u,vu,v 两个点。

输出格式

对于每个测试点,输出一行一个整数,代表点权填写方式的个数。答案对 109+710^9+7 取模。

2
6 0 4
1 1 2 2
1 2 3 4
1 3 4 2
0 2 5
1 4 6 3

6 -1 4
1 1 2 4
0 2 3
0 3 4
0 2 5
0 4 6
5
6480

提示

样例解释

对于样例的第一组测试数据,可以得到下图:

55 种填写方式分别为:

$\{0,2,2,0,0,3\}\\\{0,2,2,0,1,3\}\\\{0,2,2,0,2,3\}\\\{0,2,2,0,3,3\}\\\{0,2,2,0,4,3\}$

可以证明,不存在别的填写方式。

样例输入中,为了直观,添加了空行。实际数据中不存在多余空行。

数据范围

本题采用捆绑测试。

子任务编号 数据范围 特殊性质 分值
Subtask1\text{Subtask1} 1n101\le n\le 100l,r50\le l,r\le5 1515
Subtask2\text{Subtask2} 1n2×1051\le n\le 2\times 10^50l,r50\le l,r\le5 2020
Subtask3\text{Subtask3} 1n101\le n\le 10109l,r109-10^9\le l,r\le 10^9 1515
Subtask4\text{Subtask4} 1n2×1051\le n\le 2\times10^5109l,r109-10^9\le l,r\le 10^9 1010
Subtask5\text{Subtask5} 4040

特殊性质:保证每条边都无边权。

对于 100%100\% 的数据,保证 1T51\le T \le 51n2×1051\le n\le 2\times10^51n1061\le \sum n\le 10^6109lr109-10^9\le l\le r \le 10^9109w109-10^9\le w\le 10^9op{0,1}op\in\{0,1\}

2023.3.11 青岛市图灵编程杯 初中组 周赛

未参加
状态
已结束
规则
IOI
题目
6
开始于
2023-3-11 18:00
结束于
2023-3-11 21:00
持续时间
3 小时
主持人
参赛人数
20