제출 #1344111

#제출 시각아이디문제언어결과실행 시간메모리
1344111stoneGingerbread (BOI25_gcd)C++20
17 / 100
0 ms344 KiB
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
const int N=3e6+5;
int a[N];
int n;
bool FLAG=0;
void fun(int idx, int t){
    if(idx==n or t==0){
        int g=0;
        for(int i=0;i<n;i++){
            g=__gcd(a[i],g);
        }
        if(g==1)FLAG=1;
        return;
    }
    for(int i=0;i<=t;i++){
        a[idx]+=i;
        fun(idx+1,t-i);
        a[idx]-=i;
    }
}
signed main(){
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    fun(0,0);
    if(FLAG){
        cout<<0;
        return 0;
    }
    if(n>5){
        cout<<1;
        return 0;
    }
    for(int i=0;i<1000;i++){
        fun(0,i);
        if(FLAG){
            cout<<i;
            return 0;
        }
    }
    
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...