2877: 公约数公倍数
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:82
解决:22
题目描述
小 T 是个多才多艺的同学,不仅擅长国画,还是个数学爱好者,他小学六年级就代表龙 城书院参加了“华罗庚金杯”少年数学邀请赛。最近小 T 对最大公约数和最小公倍数产生了 浓厚的兴趣, 并学会了用辗转相除法求两个自然数的最大公约数, 但小 T 并不满足于会用辗 转相除法,他是一个酷爱钻研的人,无论学什么都喜欢刨根问底,他想能不能把这个问题反 过来,即已知两个自然数 A 和 B 的最大公约数 G 和最小公倍数 L,问有多少对满足条件的自 然数对 A 和 B?
输入
输入文件仅有一行包含两个用空格隔开的自然数 G 和 L,数据保证 L 一定是 G 的倍数并 且满足 1≤G≤L≤1,000,000,000。
输出
输出文件包含若干行,每行输出一对自然数 A 和 B(A≤B),它们满足 GCD(A,B)=G, LCM(A,B)=L。 这里 GCD(A,B)表示 A 和 B 的最大公约数, LCM(A,B) 表示 A 和 B 的最小公倍数。 输出时要求按照 A(每行第一个数)从小到大输出,两数之间严格用一个空格隔开,行末不能 有空格。
样例输入 复制
4 48
样例输出 复制
4 48
12 16
提示
[样例解释】 两个数的最大公约数要等于 4、最小公倍数要等于 48,这两个数只可能是 4 和 48 或者 12 和 16,因为 4 比 12 小,所以第一行输出 4 和 48,第二行输出 12 和 16。
【友情提醒】 对于任意两个自然数 A 和 B 都有, A*B=GCD(A,B)*LCM(A,B),即 两个自然数之积等 于它们的最大公约数与最小公倍数之积, 这一点对你思考问题和检验结果都会有所帮助。
【数据规模】 30%的数据满足:1≤G≤L≤500 50%的数据满足:1≤G≤L≤10,000 100%的数据满足:1≤G≤L≤1,000,000,000