#include <bits/stdc++.h>
#include "shoes.h"
using namespace std;
#define pb push_back
#define ll long long
const ll inf=1e9+4;
ll count_swaps(vector<int>a){
vector<int>v;
int n=a.size();
unordered_map<int,int>mp;
for (int i=0;i<n;i++){
mp[a[i]]=i;
}
for (int i=0;i<n;i++){
v.pb(i);
}
vector<int>pos;
for (int i=0;i<n;i++){
if (a[i]>0)pos.pb(a[i]);
}
ll ans=inf;
do{
vector<int>tmp;
for (auto x:v){
tmp.pb(-pos[x]);
tmp.pb(pos[x]);
}
ll cur=0;
for (int i=0;i<n;i++){
cur+=abs(mp[tmp[i]]-i);
}
cur/=2;
ans=min(ans,cur);
}while (next_permutation(v.begin(),v.end()));
return ans;
}
// int main() {
// int n;
// assert(1 == scanf("%d", &n));
// vector<int> S(2 * n);
// for (int i = 0; i < 2 * n; i++)
// assert(1 == scanf("%d", &S[i]));
// fclose(stdin);
// long long result = count_swaps(S);
// printf("%lld\n", result);
// fclose(stdout);
// 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |