题目描述
两位程序员 X 和 Y 打算开始进行竞技编程。
每个人的竞技编程水平用一个正整数表示,称为“级别”。一开始,X 的级别是 AX,Y 的级别是 AY。他们将通过学习任务提升他们的级别。
我们知道他们的级别增长规则如下:
- X 每完成 BX 个学习任务后,级别上涨 1。
- Y 每完成 BY 个学习任务后,级别上涨 1。
对于 n=1,2,ldots,N 中有多少个 n,满足以下条件?
- 当他们各自完成恰好 n 个学习任务时,X 和 Y 的级别相等。
每个输入文件中的测试样例数量为 T。
约束条件
- 1≤T≤2×105
- 1≤N≤109
- 1≤AX,BX,AY,BY≤106
输入
从标准输入读入输入数据,输入格式如下:
T
case1
case2
⋮
caseT
每个测试样例的格式如下:
N AX BX AY BY
输出
输出结果。
示例输入1
5
10 5 3 4 2
5 5 3 4 2
100 5 3 4 2
10 5 3 4 3
10 5 10 5 9
示例输出1
6
3
6
0
9
接下来以第一个测试样例为例进行说明。
对于每个 n=1,2,ldots,10,完成 n 个学习任务后他们的级别如下:
- X 的级别:5,5,6,6,6,7,7,7,8,8。
- Y 的级别:4,5,5,6,6,7,7,8,8,9。
有 6 种情况(n=2,4,5,6,7,9)满足 X 和 Y 的级别相等,因此答案为 6。