1 条题解

  • 0
    @ 2025-4-7 21:19:29

    C :

    #include<stdio.h>
    int gcd(int m,int n)
    {
    	if(m%n)
    		return gcd(n,m%n);
    	return n;
    }
    int main()
    {
    	int n,gbs,t,a;
    	scanf("%d",&n);
    	while(n--)
    	{
    		gbs=1;
    		scanf("%d",&t);
    		while(t--)
    		{
    			scanf("%d",&a);
    			gbs=gbs*(a/gcd(gbs,a));
    		}
    		printf("%d\n",gbs);
    	}
    }
    

    C++ :

    #include<stdio.h>
    
    long long gcd(long long x,long long y)
    {
    	if(!x||!y)
    		return x>y?x:y;
    	for(long long t;t=x%y;x=y,y=t);
    	return y;
    }
    
    int main()
    {
    	int n,m;
    	long long a,b,g,l;
    	scanf("%d",&n);
    	while(n--)
    	{
    		scanf("%d%lld",&m,&a);
    		if(m==1)
    		{
    			printf("%lld\n",a);
    			continue;
    		}
    		scanf("%lld",&b);
    		g=gcd(a,b);
    		l=a*b/g;
    		m-=2;
    		while(m--)
    		{
    			scanf("%lld",&a);
    			g=gcd(a,l);
    			l=a*l/g;
    		}
    		printf("%lld\n",l);
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    1181
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者