#P9853. [入门赛 #17] 方程求解

    ID: 9129 Type: RemoteJudge 2000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 2 Uploaded By: Tags>字符串二分2023O2优化语言月赛

[入门赛 #17] 方程求解

题目描述

小 A 有 nn 个关于 xx 的方程,第 ii 个方程形如 aixi+bi=cia_ix_i+b_i=c_i。方程的解 xx 均为正整数,例如下面几个方程都是符合要求的方程:

2x+4=10
-3x+13=10
4x-8=16

其中,第一组方程的解为 x1=3x_1=3,第二组方程的解为 x2=1x_2=1,第三组方程的解为 x3=6x_3=6

小 A 想要知道,给定 L,RL,R,在 LxRL\leq x\leq R 的范围内,有多少个正整数 xx 满足 xx 是其中至少一个方程的解。为了防止你欺骗他,他会询问你 QQ 次。

输入格式

第一行输入两个正整数 n,Qn,Q,分别表示小 A 有的方程数,以及小 A 想要向你询问的次数。

第二行开始,往下 nn 行,每行一个字符串,描述一个方程。

(n+2)(n+2) 行开始,往下 QQ 行,每行两个正整数 L,RL,R,表示一次询问,即给定 L,RL,R,询问在 LxRL\leq x\leq R 的范围内,有多少个正整数 xx 满足 xx 是其中至少一个方程的解。

输出格式

对于每次询问,输出一行一个整数,表示有多少个在 LxRL\leq x\leq R 的范围内的正整数 xx,满足 xx 是其中至少一个方程的解。

3 4
2x+4=10
-3x+13=10
4x-8=16
1 6
1 8
3 6
4 5
3
3
2
0
5 3
5x-2=13
8x+5=45
4x-12=8
-2x+10=4
3x-7=2
1 3
1 5
3 5
1
2
2

提示

【样例解释】

对于第一组样例,即为题目中的举例。三组方程的解分别为 x1=3,x2=1,x3=6x_1=3,x_2=1,x_3=6。则:

  • 对于 1x61\leq x\leq 6 的范围,有 33xx 的取值(x=1,3,6x=1,3,6)是其中至少一个方程的解;
  • 对于 1x81\leq x\leq 8 的范围,同上所述;
  • 对于 3x63\leq x\leq 6 的范围,有 22xx 的取值(x=3,6x=3,6)是其中至少一个方程的解;
  • 对于 4x54\leq x\leq 5 的范围,不存在一个 xx 是其中至少一个方程的解;
  • 因此分别输出 3,3,2,03,3,2,0

对于第二组样例,五组方程的解分别为 x1=3,x2=5,x3=5,x4=3,x5=3x_1=3,x_2=5,x_3=5,x_4=3,x_5=3。则:

  • 对于 1x31\leq x\leq 3 的范围,只有 x=3x=3 满足是其中至少一个方程的解;
  • 对于 1x51\leq x\leq 5 的范围,有 22xx 的取值(x=3,5x=3,5)是其中至少一个方程的解;
  • 对于 3x53\leq x\leq 5 的范围,有 22xx 的取值(x=3,5x=3,5)是其中至少一个方程的解;
  • 因此分别输出 1,2,21,2,2

【数据范围】

数据保证,1n,Q2×1051\leq n,Q\leq 2\times 10^5,方程中 ai,bi,cia_i,b_i,c_i 满足 1ai,bi,ci1091 \leq |a_i|,|b_i|,|c_i| \leq 10^9,每一组方程的解 xix_i 必定为正整数。询问时的 L,RL,R 满足 1LR2×1091\leq L\leq R\leq 2\times 10^9

本题输入数据较大,请注意代码输入输出的运行效率。