#CF2125D. 线段覆盖
线段覆盖
D. 线段覆盖
时间限制:2 秒
内存限制:256 兆字节
有一条长度为 的线性条带,单元格编号为 到 (从左到右)。
给定 条线段。每条线段由四个数字定义: —— 该线段覆盖从 到 的单元格(包含两端),并且以概率 存在(各线段独立)。
你的任务是计算每个单元格恰好被一条线段覆盖的概率。
输入
第一行包含两个整数 和 ()。
接下来 行,每行包含四个整数 (;)。
输出
输出一个整数 —— 每个单元格恰好被一条线段覆盖的概率,对 取模。
形式化地说,概率可以表示为不可约分数 。你需要输出 ,其中 是满足 的整数。
样例
输入
3 3
1 2 1 3
3 3 1 2
1 3 2 3
输出
610038216
输入
2 3
1 2 1 2
2 3 1 2
输出
0
输入
8 5
1 3 1 2
1 5 1 6
1 4 4 5
5 5 1 7
4 5 1 2
4 5 2 5
3 3 2 7
1 2 1 3
输出
94391813
说明
- 第一个样例中,概率等于 。