求最小公倍数,最大公因式时,输入值太大就无法运算的问题

输入两个正整数m和n,求其最大公约数和最小公倍数。
输入格式
两个整数
输出格式
最大公约数,最小公倍数,两个数字之间用空格隔开。
样例
样例输入
5 7
样例输出
1 35
数据范围与提示
保证 int 范围内。

img

img

你用辗转相除法啊
就算你现在的方法,i<=100万也不确定能合适,改为a和b的最大值,然后倒序比较,都能整除a,b,则这个i就是最大公约数

int型最大才32767,你放10万当然溢出了
改成long long int

用long long int,最多计算到1048575

用辗转相除法

long int