#include <bits/stdc++.h>
using namespace std;
#define int long long
#define double long double
#define medal ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define fi first
#define sec second
#define endl '\n'
int n;
int ans = 0;
void rec(vector<int> now){
vector<int> rev = now;
reverse(rev.begin(), rev.end());
if(rev==now){
ans = max(ans, (int)rev.size());
return;
}
for(int i=1; i<now.size(); i++){
vector<int> next = now;
int val = next[i] + next[i-1];
next.erase(next.begin()+i-1, next.begin()+i+1);
next.insert(next.begin()+i-1, val);
rec(next);
}
}
signed main(){
cin>>n;
vector<int> a;
for(int i=1; i<=n; i++){
int cek; cin>>cek;
a.push_back(cek);
}
rec(a);
cout<<n-ans;
}
# | 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... |
# | 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... |