d778: NOIP2009 2.Hankson的趣味题
Tags :
Accepted rate : 51人/62人 ( 82% ) [非即時]
評分方式:
Tolerant

最近更新 : 2014-11-01 03:05

Content
 Hanks 博士是 BT (Bio-Tech,生物技术)  领域的知名专家,他的儿子名叫 Hankson。现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题。 
     今天在课堂上,老师讲解了如何求两个正整数 c1和 c2 的最大公约数和最小公倍数。现在 Hankson 认为自己已经熟练地掌握了这些知识,他开始思考一个“求公约数”和“求公倍数”之类问题的“逆问题” ,这个问题是这样的:已知正整数 a0,a1,b0,b1,设某未知正整数 x 满足: 
1. x 和 a0 的最大公约数是 a1; 
2. x 和b0 的最小公倍数是 b1。 
     Hankson 的“逆问题”就是求出满足条件的正整数 x。但稍加思索之后,他发现这样的x 并不唯一,甚至可能不存在。因此他转而开始考虑如何求解满足条件的 x 的个数。请你帮助他编程求解这个问题。 
Input
第一行为一个正整数 n,表示有 n 组输入数据。接下来的 n 行每行一组输入数据,为四个正整数 a0,a1,b0,b1,每两个整数之间用一个空格隔开。输入数据保证 a0能被 a1 整除,b1 能被 b0整除。
Output
共n 行。每组输入数据的输出结果占一行,为一个整数。 
对于每组数据:若不存在这样的 x,请输出 0; 若存在这样的 x,请输出满足条件的 x 的个数。
Sample Input
2
41 1 96 288
95 1 37 1776
Sample Output
6
2
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (10%): 1.0s , <1K
公開 測資點#1 (10%): 1.0s , <1K
公開 測資點#2 (10%): 1.0s , <1K
公開 測資點#3 (10%): 1.0s , <1K
公開 測資點#4 (10%): 1.0s , <1M
公開 測資點#5 (10%): 1.0s , <1M
公開 測資點#6 (10%): 1.0s , <1M
公開 測資點#7 (10%): 1.0s , <1M
公開 測資點#8 (10%): 1.0s , <1M
公開 測資點#9 (10%): 1.0s , <1M
Hint :

第一组输入数据,x 可以是 9、18、36、72、144、288,共有6个。 
第二组输入数据,x 可以是 48、1776,共有 2 个。 


对于 50%的数据,保证有 1≤a0,a1,b0,b1≤10000且 n≤100。 
对于 100%的数据,保证有 1≤a0,a1,b0,b1≤2,000,000,000且 n≤2000。

Tags:
出處:
NOIP2009提高组第二题 [管理者:
liouzhou_101 (王启圣)
]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」