제출 #1290795

#제출 시각아이디문제언어결과실행 시간메모리
1290795lucasdmyArranging Shoes (IOI19_shoes)C++20
10 / 100
1097 ms8476 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=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]);
            resp++;
        }
    }
    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...