3289: 公交车

内存限制:256 MB 时间限制:2 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

小男孩杰拉德在离他家很远的学校学习。这就是为什么他必须每天乘公共汽车去上学的原因。从家到学校的路程由一段直线表示;该直线恰好包含n + 1个公交站点。他们都按照从杰拉德家中到学按顺序编号的整数从0到n。杰拉德家的巴士站号码为0,学校的巴士站号码为n。

在房子和学校之间有m条公共汽车:第i条公共汽车从站点si到ti(si <ti),按照它们在直线上的顺序访问所有中间站点。此外,杰拉尔德不是个笨蛋,他不会下车,直到它仍然有可能在靠近学校(显然,下车完全没有意义)。换句话说,杰拉尔德可以在任何从si到ti - 1(含)的站点上搭乘第i辆公共汽车,但他只能在公车站ti下车第i辆公共汽车。

杰拉德不能在公交车站之间行走,他也无法从学校走向家门。

杰拉尔德想知道他从家到学校有多少种方式。告诉他这个数字。如果杰拉尔德跨越不同公交车站点之间的某个段,两种方式会有所不同。由于方式的数量可能太多,答案取模1e9+7.



输入格式

第一行包含两个空格分隔的整数:n和m(1≤n≤109,0≤m≤105)。然后遵循m行,每行包含两个整数si,ti。它们是公交车的起停和终点数量(0≤si<ti≤n)。

输出格式

输出唯一的号码 - 以1000000007(109 + 7)为模数的方式。

输入样例 复制

2 2
0 1
1 2

输出样例 复制

1

分类标签