{"trustable":false,"sections":[{"title":"","value":{"format":"HTML","content":"\u003cscript type\u003d\"text/x-mathjax-config\"\u003eMathJax.Hub.Config({messageStyle:\"none\",tex2jax:{skipTags:[\"script\",\"noscript\",\"style\",\"textarea\",\"code\"],inlineMath:[[\u0027$\u0027,\u0027$\u0027]]},delayStartupUntil:\"onload\"});\u003c/script\u003e\n\u003cscript src\u003d\"https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config\u003dTeX-MML-AM_CHTML\"\u003e\u003c/script\u003e\n\u003cp\u003e潘会长看到学弟讲gcd和lcm算法时,回想到了自己大一时做为萌新被学长出各种题吊打的辛酸史,于是暗下决心,绝对不能让自己的学弟们遭受这些,于是便想到了一道签到题送给学弟们\u003c/p\u003e\n\u003cp\u003e在课堂上大家学会了如何求两个正整数 c1 和 c2 的最大公约数和最小公倍数。但潘会长却想到了一个“求公约数”和“求公倍数”之类问题的“逆问题”,这个问题是这样的:已知正整数 a0,a1,b0,b1,设某未知正整数x满足:\u003c/p\u003e\n\u003col\u003e\n \u003cli\u003ex 和 a0 的最大公约数是 a1;\u003c/li\u003e\n\u003c/ol\u003e\n\u003col start\u003d\"2\"\u003e\n \u003cli\u003ex 和 b0 的最小公倍数是 b1 。\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e潘会长的“逆问题”就是求出满足条件的正整数 x 。但稍加思索之后,他发现这样的 x 并不唯一,甚至可能不存在。因此他转而开始考虑如何求解满足条件的 x 的个数。请你帮助他编程求解这个问题。\u003c/p\u003e\n\u003ch4\u003e输入格式\u003c/h4\u003e\n\u003cp\u003e第一行为一个正整数 n ,表示有 n 组输入数据。接下来的 n 行每行一组输入数据,为四个正整数 a0,a1,b0,b1,每两个整数之间用一个空格隔开。输入数据保证 a0 能被 a1 整除,b1 能被 b0整除。\u003c/p\u003e\n\u003ch4\u003e输出格式\u003c/h4\u003e\n\u003cp\u003e对于每组数据:若不存在这样的 x ,请输出 0;\u003c/p\u003e\n\u003cp\u003e若存在这样的 x ,请输出满足条件的 x 的个数;\u003c/p\u003e\n\u003ch4\u003e数据范围\u003c/h4\u003e\n\u003cp\u003e对于 100% 的数据,保证有 1\u003c\u003da0,b1,b0,b1 \u003c\u003d 2,000,000,000 且 n \u003c 2000。\u003c/p\u003e\n\u003ch4\u003e样例说明\u003c/h4\u003e\n\u003cp\u003e第一组输入数据,x 可以是 9、18、36、72、144、288,共有 6 个。\u003c/p\u003e\n\u003cp\u003e第二组输入数据,x 可以是 48、1776,共有 2 个。\u003c/p\u003e"}},{"title":"Sample Input","value":{"format":"HTML","content":"\u003cpre\u003e2\n41 1 96 288\n95 1 37 1776\u003c/pre\u003e"}},{"title":"Sample Output","value":{"format":"HTML","content":"\u003cpre\u003e6\n2\u003c/pre\u003e"}}]}