제출 #1334493

#제출 시각아이디문제언어결과실행 시간메모리
1334493zhehanArranging Shoes (IOI19_shoes)C++20
10 / 100
1 ms344 KiB
#include "shoes.h"
#include <bits/stdc++.h>
using namespace std;

long long count_swaps(std::vector<int> s) {
  map<int, queue<int>> key;
  for (int i = 0; i < s.size(); ++i) {
    if (s[i] > 0) {
      key[s[i]];
      key[s[i]].push(i);
    }
  }
  int swaps = 0;
  for (int i = 0; i < s.size(); ++i) {
    if (s[i] < 0) {
      if (key[-s[i]].front() < i) {
        swaps += i - key[-s[i]].front();
      } else {
        swaps += key[-s[i]].front() - 1 - i;
      }

      key[-s[i]].pop();
    }
  }
  return swaps;
}
#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...