Submission #144826

#TimeUsernameProblemLanguageResultExecution timeMemory
144826DanerZeinArranging Shoes (IOI19_shoes)C++14
10 / 100
1080 ms3104 KiB
#include "shoes.h"
#include <bits/stdc++.h>
using namespace std;
long long count_swaps(std::vector<int> s) {
  vector<int>uni;
  for(int i=0;i<s.size();i++){
    if(s[i]>0){
      uni.push_back(0);
    }
    else{
      uni.push_back(1);
    }
  }
  int c=0;
  for(int i=0;i<uni.size();i++){
    if(i%2==0){
      if(uni[i]==0){
	int id;
	for(int j=i+1;j<uni.size();j++){
	  if(uni[j]==1){
	    id=j;
	    break;
	  }
	}
	for(int j=id;j>i;j--){
	  c++;
	  swap(uni[j],uni[j-1]);
	}
      }
    }
    else{
      if(uni[i]==1){
	int id;
	for(int j=i+1;j<uni.size();j++){
	  if(uni[j]==0){
	    id=j;
	    break;
	  }
	}
	for(int j=id;j>i;j--){
	  c++;
	  swap(uni[j],uni[j-1]);
	}
      }
    }
  }
  return c;
}

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:6:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int i=0;i<s.size();i++){
               ~^~~~~~~~~
shoes.cpp:15:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int i=0;i<uni.size();i++){
               ~^~~~~~~~~~~
shoes.cpp:19:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int j=i+1;j<uni.size();j++){
                ~^~~~~~~~~~~
shoes.cpp:34:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int j=i+1;j<uni.size();j++){
                ~^~~~~~~~~~~
shoes.cpp:33:6: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
  int id;
      ^~
shoes.cpp:18:6: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
  int id;
      ^~
#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...