c++自带的__gcd()函数会超时?哪位大佬能帮帮本蒟蒻?:)
查看原帖
c++自带的__gcd()函数会超时?哪位大佬能帮帮本蒟蒻?:)
1473787
Ewenre楼主2025/6/30 21:39
#include<bits/stdc++.h>
using namespace std;
int n,q,a[100005],gcd,b;
int main()
{
    cin>>n>>q;
    for(int i=1;i<=n;i++)
        scanf("%d",&a[i]);  
    for(int i=1;i<=q;i++){
        gcd=__gcd(a[1]+i,a[2]+i);
        for(int j=2;j<n;j++){
			gcd=__gcd(gcd,__gcd(a[j]+i,a[j+1]+i));
			if(gcd==1) break;
		}
        printf("%d\n",gcd);
    }
}

我用了较快的输入输出方式,但还是超时了。 第15行gcd为1就直接跳出,也没有帮助。 求指教……

2025/6/30 21:39
加载中...