제출 #1288874

#제출 시각아이디문제언어결과실행 시간메모리
1288874AbdullahIshfaqArranging Shoes (IOI19_shoes)C++20
100 / 100
214 ms146408 KiB
#include <bits/stdc++.h> using namespace std; long long count_swaps(vector<int> S) { int N = int(S.size()); unordered_map<int, queue<int>> unpaired; vector<int> bit(N + 1); long long ans = 0; for (int i = 0; i < N; i++) { int j; if (unpaired[-S[i]].empty()) { j = i + 1; unpaired[S[i]].push(j); } else { j = unpaired[-S[i]].front(); unpaired[-S[i]].pop(); ans += i; for (int a = j; a; a -= a & (-a)) ans -= bit[a]; if (S[i] < 0) ans++; } for (int a = j; a <= N; a += a & (-a)) bit[a]++; } return ans; }
#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...