Submission #1290793

#TimeUsernameProblemLanguageResultExecution timeMemory
1290793lucasdmyArranging Shoes (IOI19_shoes)C++20
30 / 100
1097 ms8416 KiB
#include "shoes.h" #include <bits/stdc++.h> using namespace std; long long int count_swaps(vector<int>v){ vector<long long int>left; map<int, int>freq; for(int k=0;k<v.size();k++){ freq[abs(v[k])]++; if(freq[abs(v[k])]%2==1){ left.push_back(abs(v[k])); } } vector<int>per(left.size()); for(int k=0;k<left.size();k++){ per[k]=k; } long long int resp=1e18; do{ long long int aux=0; vector<int>v2=v; for(int k=0;k<v2.size();k++){ int ex; if(k%2==0){ ex=-left[per[k/2]]; }else{ ex=left[per[k/2]]; } int f=k; while(v2[f]!=ex){ f++; } for(int i=f;i>k;i--){ swap(v2[i], v2[i-1]); aux++; } } resp=min(resp, aux); }while(next_permutation(per.begin(), per.end())); return resp; } /*int main(){ int n; cin>>n; vector<int>v(2*n); for(int k=0;k<2*n;k++){ cin>>v[k]; } cout<<count_swaps(v); }*/
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...