您的位置:首页 > 其它

杭电2028

2013-04-27 23:44 330 查看
辗转相除:

#include<iostream>

using namespace std;

int main()

{

int bei(int a,int b);

int n;

while(cin>>n)

{

int m=1,sum;

for(int i=1;i<=n;i++)

{

cin>>sum;

m=bei(m,sum);

}

cout<<m<<endl;

}

}

int bei(int a,int b)

{

int m,n,t,c;

m=a;

n=b;

do

{

if(a>b)

{

t=a;

a=b;

b=t;

}

c=b%a;

b=c;

}while(c!=0);

return (n/a)*m;//这里如果写成(m*n)/a可能导致m*n的时候溢出,所以Wrong Answer

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: