hdu 2503 1713 1108 最小公倍数&最大公约数

来源:互联网 发布:phpstorm格式化js代码 编辑:程序博客网 时间:2024/06/11 00:07

gcd模板:

__int64 gcd(__int64 a,__int64 b){    retur b==0?a:gcd(b,a%b);}

 

1108:

#include<iostream>#include<cstdio>using namespace std;__int64 gcd(__int64 a,__int64 b){    return b==0?a:gcd(b,a%b);}int main(){    int a,b;    while(scanf("%d%d",&a,&b)!=EOF)    {        printf("%d\n",a*b/gcd(a,b));    }    return 0;}


 


2503:

#include<iostream>using namespace std;__int64 gcd(__int64 a,__int64 b){    return b==0?a:gcd(b,a%b);}int main(){    __int64 n,a,b,c,d,k,tmp,m;    cin>>n;    while(n--)    {        cin>>a>>b>>c>>d;        tmp=gcd(b,d);        m=a*d/tmp+c*b/tmp;        k=gcd(m,b*d/tmp);    }    return 0;}


1713:

#include<iostream>#include<cstdio>using namespace std;__int64 gcd(__int64 a,__int64 b){    return b ==0 ? a:gcd(b,a%b);}int main(){    __int64 a,b,c,d,n,k,m,tmp;    cin>>n;    while(n--)    {        scanf("%I64d%*c%I64d %I64d%*c%I64d",&a,&b,&c,&d);        tmp=gcd(a*d,b*c);        k=gcd(a*b*c*d,b*d*tmp);        if(tmp*b*d==k)printf("%I64d\n",a*b*c*d/k);        else printf("%I64d/%I64d\n",a*b*c*d/k,tmp*b*d/k);    }    return 0;}


 

原创粉丝点击