Submission #889522

#TimeUsernameProblemLanguageResultExecution timeMemory
889522svazArranging Shoes (IOI19_shoes)C++14
10 / 100
1 ms600 KiB
#include "shoes.h"
#include<iostream>
#include<vector>
using namespace std;
long long count_swaps(std::vector<int> S){
    vector<bool>visitados(S.size(),false),visita2;
    visita2=visitados;
    long long sw=0,sw2=0;
    int buscado;
    for(int i=0;i<S.size();i++){
        if(!visitados[i]){
         buscado=S[i]*-1;
        for(int j=i+1;j<S.size();j++){
            if(!visitados[j])sw++;
            if(S[j]==buscado){
                if(buscado>0)sw--;
                visitados[i]=visitados[j]=true;
                break;
            }
        }
        }
    }

    for(int i=S.size()-1;i>=0;i--){
        if(!visita2[i]){
         buscado=S[i]*-1;
        for(int j=i-1;j>=0;j--){
            if(!visita2[j])sw2++;
            if(S[j]==buscado){
                if(buscado<0)sw2--;
                visita2[i]=visita2[j]=true;
                break;
            }
        }
        }
    }
    return min(sw,sw2);
}
/*int main(){
    int n,zap;
    cin>>n;
    vector<int>zapatos;
    for(int i=0;i<(n*2);i++){
        cin>>zap;
        zapatos.push_back(zap);
    }
    cout<<count_swaps(zapatos)<<"\n";
    return 0;
}*/

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:10:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   10 |     for(int i=0;i<S.size();i++){
      |                 ~^~~~~~~~~
shoes.cpp:13:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |         for(int j=i+1;j<S.size();j++){
      |                       ~^~~~~~~~~
#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...