Submission #826838

#TimeUsernameProblemLanguageResultExecution timeMemory
826838vjudge1Arranging Shoes (IOI19_shoes)C++17
10 / 100
16 ms1868 KiB
#include<bits/stdc++.h> #include "shoes.h" using namespace std; #define all(x) x.begin(), x.end() #define pb push_back #define ll long long #define vout(v) for(int i=0; i<v.size(); i++) cout<<v[i]<<' '; int tt[10]; long long count_swaps(vector<int> a){ int n = a.size(); if(n == 2){ if(a[0] > 0){ return 1; } else{ return 0; } } if(n <= 8){ vector<int> q, qq; for(int i=0; i<n; i++){ qq.pb(a[i]); } sort(all(qq)); for(int i=0; i<n/2; i++){ q.pb(abs(qq[i])); } sort(all(q)); ll ans=1e18; //vout(q); do{ for(int i=0; i<n; i++){ qq[i] = a[i]; } ll res=0; //ll k=0; for(int i=0; i<n/2; i++){ for(int j=i * 2; j<n; j++){ if(qq[j] == -q[i]){ for(int k=j; k>i * 2; k--){ swap(qq[k], qq[k-1]); res++; } break; } } for(int j=i * 2 + 1; j<n; j++){ if(qq[j] == q[i]){ for(int k=j; k>i * 2 + 1; k--){ swap(qq[k], qq[k-1]); res++; } break; } } } ans = min(ans, res); }while(next_permutation(all(q))); return ans; } return 0; }
#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...