#include<string.h>
#include<stdio.h>
int main()
{
int a[100];
int t,i,l;
while (~scanf("%d",&t))
{
for(i=0;i<t;i++)
scanf("%d",&a[i]); //&忘了
for (i=1;;i++)
{
for(l=1;l<t;l++)
if((a[0]*i)%a[l]!=0) break;
if(l==t) break;
}
printf("%d\n",a[0]*i);
}
return 0;
}
水题
#include<string.h>
#include<stdio.h>
int gb(int k,int a)
{
int max,i;
max=k>a?k:a;
for (i=1;;i++)
if(max*i%k==0 && max*i%a==0)
break;
return max*i;
}
int main()
{
int a;
int t,i,k;
while (~scanf("%d",&t))
{
for(i=0,k=1;i<t;i++)
{
scanf("%d",&a);
k=gb(k,a);
}
printf("%d\n",k);
}
return 0;
}
第二种方法效率更高