题目描述
小 A 有 n 个关于 x 的方程,第 i 个方程形如 aixi+bi=ci。方程的解 x 均为正整数,例如下面几个方程都是符合要求的方程:
其中,第一组方程的解为 x1=3,第二组方程的解为 x2=1,第三组方程的解为 x3=6。
小 A 想要知道,给定 L,R,在 L≤x≤R 的范围内,有多少个正整数 x 满足 x 是其中至少一个方程的解。为了防止你欺骗他,他会询问你 Q 次。
输入格式
第一行输入两个正整数 n,Q,分别表示小 A 有的方程数,以及小 A 想要向你询问的次数。
第二行开始,往下 n 行,每行一个字符串,描述一个方程。
第 (n+2) 行开始,往下 Q 行,每行两个正整数 L,R,表示一次询问,即给定 L,R,询问在 L≤x≤R 的范围内,有多少个正整数 x 满足 x 是其中至少一个方程的解。
输出格式
对于每次询问,输出一行一个整数,表示有多少个在 L≤x≤R 的范围内的正整数 x,满足 x 是其中至少一个方程的解。
提示
【样例解释】
对于第一组样例,即为题目中的举例。三组方程的解分别为 x1=3,x2=1,x3=6。则:
- 对于 1≤x≤6 的范围,有 3 个 x 的取值(x=1,3,6)是其中至少一个方程的解;
- 对于 1≤x≤8 的范围,同上所述;
- 对于 3≤x≤6 的范围,有 2 个 x 的取值(x=3,6)是其中至少一个方程的解;
- 对于 4≤x≤5 的范围,不存在一个 x 是其中至少一个方程的解;
- 因此分别输出 3,3,2,0。
对于第二组样例,五组方程的解分别为 x1=3,x2=5,x3=5,x4=3,x5=3。则:
- 对于 1≤x≤3 的范围,只有 x=3 满足是其中至少一个方程的解;
- 对于 1≤x≤5 的范围,有 2 个 x 的取值(x=3,5)是其中至少一个方程的解;
- 对于 3≤x≤5 的范围,有 2 个 x 的取值(x=3,5)是其中至少一个方程的解;
- 因此分别输出 1,2,2。
【数据范围】
数据保证,1≤n,Q≤2×105,方程中 ai,bi,ci 满足 1≤∣ai∣,∣bi∣,∣ci∣≤109,每一组方程的解 xi 必定为正整数。询问时的 L,R 满足 1≤L≤R≤2×109。
本题输入数据较大,请注意代码输入输出的运行效率。