luogu#P7094. [yLOI2020] 金陵谣

[yLOI2020] 金陵谣

题目背景

水几绕,山几重,何处金陵城。
访名都,寻形胜,龙虎倚江东。
书留翰墨,曲落潮声。
草木几度枯荣。

——银临《金陵谣》

题目描述

江苏南京,亦称金陵,是一座历史文化名城。有了古城的衬托,江苏省的高考模拟题都显地那么棘手,难以解决。切切在一轮复习过程中便碰到一道江苏省模拟题,在七瑾的帮助下,切切很快秒杀了该题,但切切觉得不够,想用这道题来刁难你。解决本题就能吃到切切和七瑾撒的糖。

给定四个正整数 a,b,c,da, b, c, d,求有多少对正整数 (x,y)(x, y) 满足

ax+bc=dy\frac a x + \frac b c = \frac d y

输入格式

本题单测试点内有多组测试数据

第一行是一个整数,表示数据组数 TT

接下来 TT 行,每行四个整数,依次表示一组数据的 a,b,c,da, b, c, d

输出格式

对于每组数据,输出一行一个整数表示答案。

1
1 1 3 2
3

提示

样例 1 解释

1x+13=2y\frac 1 x + \frac 1 3 = \frac 2 y 的正整数解对数,分别是 (x=3,y=3)(x = 3, y = 3)(x=6,y=4)(x = 6, y = 4)(x=15,y=5)(x = 15, y = 5)

数据规模与约定

本题共有 20 个测试点,每个测试点 55 分。

  • 对于测试点 11,保证 T=0T = 0
  • 对于测试点 2162 \sim 16,共 1515 个测试点,对于 a,b,c,da, b, c, d 四个数中至少存在一个数为 11 共有 1515 种情况,每个测试点对应一种情况。
  • 对于测试点 172017 \sim 20,没有特殊约定。

对于全部的测试点,保证 0T200 \leq T \leq 201a,b,c,d1061 \leq a, b, c, d \leq 10^6d×c106d \times c \leq 10^6

提示

  • 众所周知,高考不考数论。
  • 本题共有两个样例文件,见附加中的 song.zip。