Submission #671771

#TimeUsernameProblemLanguageResultExecution timeMemory
671771mseebacherArranging Shoes (IOI19_shoes)C++17
10 / 100
1 ms300 KiB
#include<bits/stdc++.h> typedef long long ll; using namespace std; long long int count_swaps(vector<int> s){ int n = s.size(); vector<int> pos(n,0); vector<set<int>> schuhe(n+1); for(int i = 0;i<n;i++) { if(s[i] > 0){ schuhe[s[i]].insert(i); } } ll val = 0; for(int i = 0;i<n;i++){ if(s[i] < 0){ int index = *schuhe[-s[i]].begin(); if(index == i+1){ schuhe[-s[i]].erase(index); continue; } if(i > index){ val = val + abs(index-i)-pos[i]; for(int j = 0;j<index;j++) pos[j]++; }else{ val = val + index-i-1-pos[i]; for(int j = index+1;j<n;j++) pos[j]++; } schuhe[-s[i]].erase(index); } } return val; }
#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...