Submission #895483

#TimeUsernameProblemLanguageResultExecution timeMemory
895483ByeWorldArranging Shoes (IOI19_shoes)C++14
10 / 100
76 ms135252 KiB
#include "shoes.h" #include <bits/stdc++.h> #define ll long long using namespace std; const int MAXN = 1e5+10; int skip[MAXN]; queue <int> vec[2*MAXN]; int n; ll ans; long long count_swaps(vector<int> s) { n = s.size(); for(int i=0; i<n; i++){ if(s[i] < 0) vec[MAXN-s[i]].push(i); else vec[s[i]].push(i); } //cout << vec[2].front() << "p\n"; for(int i=0; i<n; i++){ if(skip[i]) continue; if(s[i] < 0){ int idx = vec[-s[i]].front(); skip[idx] = 1; ans += idx-i-1; //cout << i << ' '<< idx << " idx\n"; vec[-s[i]].pop(); vec[MAXN-s[i]].pop(); } else { int idx = vec[MAXN+s[i]].front(); skip[idx] = 1; ans += idx-i; //cout << i << ' '<< idx << " idx\n"; vec[MAXN+s[i]].pop(); vec[s[i]].pop(); } } 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...