Submission #1290690

#TimeUsernameProblemLanguageResultExecution timeMemory
1290690SofiatpcArranging Shoes (IOI19_shoes)C++20
30 / 100
16 ms3116 KiB
#include "shoes.h"
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 1e5+5;
vector<int> idl[MAXN], idr[MAXN];

long long count_swaps(vector<int> s) {
	int n = s.size()/2;
	for(int i = 0; i < s.size(); i++){
		if(s[i] < 0)idl[-s[i]].push_back(i);
		else idr[s[i]].push_back(i);
	}

	long long ans = 0;
	for(int i = 1; i <= n; i++){
		int cur = 0;
		for(int j = 0; j < idl[i].size(); j++){
			if(idl[i][j] > cur)ans += idl[i][j]-cur;
			cur++;
			if(idr[i][j] > cur)ans += idr[i][j]-cur;
			cur++;
		}
	}
	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...