帮忙看下哪里错了
2023-07-15 11:01:46
发布于:浙江
题目 A1765.互质
https://www.acgo.cn/problemset/1765/info
代码:
#include<bits/stdc++.h>
using namespace std;
const int F=1e7;
short a[F]={};
bool f(int a,int b){
for(int i=2;i<=min(a,b);i++){
if(a%i==0&&b%i==0){
return 0;
}
}return 1;
}
int main(){
int n,m,max=0,x=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>m;
for(int i=1;i<=m;i++){
cin>>a[i];
}for(int i=m;i>0;i--){
for(int j=m;j>0;j--){
if(a[i]==a[j]&&a[i]==1){
cout<<i+j<<endl;x=1;break;
}if(f(a[i],a[j])){
cout<<i+j<<endl;x=1;break;
}
}if(x){
break;
}
}if(x==0){
cout<<"-1"<<endl;
}else x=0;
}
}
第九个样例永远过不去,不太理解了。
这里空空如也
有帮助,赞一个