Submission #421125

#TimeUsernameProblemLanguageResultExecution timeMemory
421125daanolavArranging Shoes (IOI19_shoes)C++14
10 / 100
1 ms280 KiB
#include "shoes.h" #include <vector> #include <bitset> #include <tuple> #include <cmath> using namespace std; typedef vector<int> vi; typedef pair<vi,vi> vivi; int n,num,shoeSize,index; long long count_swaps(std::vector<int> s) { n = s.size() / 2; vivi sizes[n + 1]; for(index = 0; index < 2 * n; ++index) { num = s[index]; //cerr << "shoe num " << index << " is " << num << endl; shoeSize = abs(num); if(num < 0) { sizes[shoeSize].first.push_back(index); } else { sizes[shoeSize].second.push_back(index); } } long long swapsNeeded = 0; for(vivi shoes : sizes) { //cerr << "lop" << endl; //cerr << shoes.first.size() << endl; for(index = 0; index < shoes.first.size(); ++index) { //cerr << "comparing " << shoes.first[index] << " and " << shoes.second[index] << endl; if(shoes.second[index] > shoes.first[index]) { swapsNeeded += shoes.second[index] - shoes.first[index] - 1; } else { swapsNeeded += shoes.first[index] - shoes.second[index]; } } } return swapsNeeded; }

Compilation message (stderr)

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