제출 #909939

#제출 시각아이디문제언어결과실행 시간메모리
909939vjudge1Arranging Shoes (IOI19_shoes)C++17
50 / 100
1100 ms3248 KiB
#include <bits/stdc++.h>

using namespace std;

using ll = long long;
using pii = pair<int, int>;

int searchNumberLeftMost(vector<int> &shoes, int target) {
  for (int i = 1; i < shoes.size(); i++)
    if (shoes[i] == target)
      return i;

  return -1;
}

ll solve(vector<int> &shoes) {
  if (shoes.size() == 2)
    return shoes[0] > shoes[1];

  int shoe = shoes[0];

  int right = searchNumberLeftMost(shoes, -shoe);

  shoes.erase(shoes.begin());
  shoes.erase(shoes.begin() + right - 1);

  int distance = right;

  if (shoe < 0)
    distance--;

  return distance + solve(shoes);
}

ll count_swaps(vector<int> shoes) { return solve(shoes); }

컴파일 시 표준 에러 (stderr) 메시지

shoes.cpp: In function 'int searchNumberLeftMost(std::vector<int>&, int)':
shoes.cpp:9:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    9 |   for (int i = 1; i < shoes.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...