HDU 2028 Lowest Common Multiple Plus
1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 int gcd(int a,int b) 5 { 6 return b==0?a:gcd(b,a%b);//辗转取余法 7 } 8 int main() 9 { 10 int n,a,b,i,k; 11 while(scanf("%d",&n)!=EOF) 12 { 13 scanf("%d",&b); 14 for(i=1;i<n;i++) 15 { 16 scanf("%d",&a); 17 k=gcd(b,a); 18 b=b/k*a;//此处注意题意不能超出整数范围,即不能先乘再除 19 } 20 printf("%d\n",b); 21 } 22 system("pause"); 23 return 0; 24 }
浙公网安备 33010602011771号