最小公倍数
杨明诚
明则诚矣,诚则明矣
展开
-
给定两个正整数,计算这两个数的最小公倍数。
#includeint gcd(int a,int b){return b?gcd(b,a%b):a;}int main() {int a,b;while(scanf("%d %d",&a,&b)!=EOF)printf("%d\n",a/gcd(a,b)*b);//先除后乘会将数的位数降低,防止数过大//return 0;}//公式:a*b=gcd原创 2017-07-21 22:28:18 · 7862 阅读 · 0 评论 -
有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b。若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c。
#includeint gcd(int a,int b) {return b?gcd(b,a%b):a;}int main() {int t;scanf("%d",&t);while(t--) {int a,b;scanf("%d %d",&a,&b);int c=b*2;//从b的2倍开始顺序尝试,找到后即为最小的c//while(gcd(原创 2017-07-21 22:13:54 · 5659 阅读 · 1 评论