| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1344106 | stone | Gingerbread (BOI25_gcd) | C++20 | 75 ms | 1488 KiB |
#include<bits/stdc++.h>
using namespace std;
int n;
int gcd(int a, int b) {
if(b == 0) {
return a;
}
return gcd(b,a%b);
}
const int N=3e5+5;
int a[N];
bool dude(int d, int br) {
if(d == n) {
int e = 0;
for(int i = 0; i < n; i++) {
e = gcd(e,a[i]);
}
if(e == 1) {
return 1;
}
return 0;
}
for(int i = 0; i <= br; i++) {
a[d]+=i;
if(dude(d+1,br-i)) {
return true;
}
a[d]-=i;
}
return false;
}
int main()
{
cin >> n;
for(int i = 0; i < n; i++) {
cin>>a[i];
}
int d = 0;
for(int i = 0; i < n; i++) {
d = gcd(d,a[i]);
}
if(d == 1) {
cout << 0;
return 0;
}
if(n > 15) {
cout << 1;
return 0;
}
for(int i = 1; i < 1000; i++) {
if(dude(0,i)) {
cout << i;
return 0;
}
}
return 0;
}| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
