Submission #789855

#TimeUsernameProblemLanguageResultExecution timeMemory
789855ezzzayArranging Shoes (IOI19_shoes)C++14
45 / 100
18 ms1884 KiB
#include "shoes.h"
#include<bits/stdc++.h>
using namespace std;
long long count_swaps(vector<int> s) {
   if(s.size()<=16){
       long long k=0;
       int g=0;
       for(int i=0;i<s.size();i++){
           if(s[i]<0){ 
               int idx=i;
               while(idx!=g){
                   swap(s[idx],s[idx-1]);
                   k++;
                   idx--;
               }
               int j;
               for(j=g+1;j<s.size();j++){
                   if(abs(s[i])==s[j])break;
               }
               
               idx=j;
               while(idx!=g+1){
                   swap(s[idx],s[idx-1]);
                   k++;
                   idx--;
               }
               g+=2;
           }
       }
		return k;
	}
	long long k=0;
	int g=0;
	for(int i=0;i<s.size();i++){
	    if(s[i]<0){
	        k+=abs(g-i);
	        g+=2;
	    }
	}
	return k;
}

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:8:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    8 |        for(int i=0;i<s.size();i++){
      |                    ~^~~~~~~~~
shoes.cpp:17:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |                for(j=g+1;j<s.size();j++){
      |                          ~^~~~~~~~~
shoes.cpp:34:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |  for(int i=0;i<s.size();i++){
      |              ~^~~~~~~~~
#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...