HDU--2028

来源:互联网 发布:蒙大拿州立大学 知乎 编辑:程序博客网 时间:2024/06/11 02:57

点击打开原题

先算前两个数的最小公倍数,并把此最小公倍数的值赋给第二个数

依次循环

有种贪心的意思

#include<iostream>using namespace std;void LCM(unsigned a,unsigned* b){    unsigned m,n,c;    if(a>*b){        m=a;n=*b;    }     else{        m=*b;n=a;    }    c=m%n;    while(c!=0){        m=n;        n=c;        c=m%n;    }    *b=*b*a/n;}int main(){    int n,i;    unsigned a[10000];    int result;    while(cin>>n){        for(i=0;i<n;++i){            cin>>a[i];        }        for(i=0;i<n-1;++i){                LCM(a[i],&a[i+1]);        }        cout<<a[i]<<endl;        }    return 0;} 


0 0
原创粉丝点击