Submission #144746

#TimeUsernameProblemLanguageResultExecution timeMemory
144746monus1042Arranging Shoes (IOI19_shoes)C++17
25 / 100
32 ms1916 KiB
#include "shoes.h" long long count_swaps(std::vector<int> s) { if (s.size()==2){ if (s[0]<0) return 0; else return 1; }else if (s.size()<=16){ long long counterTOT=0; for (int i=0; i<s.size(); i+=2){ int j; if (s[i]>0){ j=i+1; while(s[j]>0){ ++j; } while(i!=j){ std::swap(s[j],s[j-1]); ++counterTOT; --j; } } j=i+1; while(s[j]!=s[i]*-1){ ++j; } while(i+1!=j){ std::swap(s[j],s[j-1]); ++counterTOT; --j; } } return counterTOT; }else{ long long x=s.size()/2 ; return x*(x-1)/2; } }

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:9:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int i=0; i<s.size(); i+=2){
                 ~^~~~~~~~~
#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...