#include<bits/stdc++.h>
using namespace std;
int a,b,c,d,e,f,ans=1e9;
stack<int>s,ss;
vector<int>v,w;
void br(int x){
for(int i=x;i<a;i++){
for(int j=i;j>=x;j--){
s.push(j);
}
br(i+1);
for(int j=i;j>=x;j--){
s.pop();
}
}
for(int i=a;i>=x;i--){
s.push(i);
}
ss=s;
w=v;
int tempp=0,siz=ss.size();
while(!ss.empty()){
int temp=ss.top();
// cout<<temp<<' ';
ss.pop();
siz--;
for(int i=0;i<siz;i++){
if(w[i]==temp){
swap(w[i],w[i+1]);
tempp++;
}
}
}
// cout<<'|';
// for(int i=0;i<a;i++){
// cout<<w[i]<<' ';
// }
// cout<<'|';
// cout<<tempp;
// cout<<endl;
ans=min(ans,tempp);
for(int i=a;i>=x;i--){
s.pop();
}
}
int main(){
cin>>a;
for(int i=0;i<a;i++){
cin>>b;
v.push_back(b);
}
br(1);
cout<<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... |