Submission #1035962

#TimeUsernameProblemLanguageResultExecution timeMemory
1035962ArthuroWichArranging Shoes (IOI19_shoes)C++17
10 / 100
1 ms348 KiB
#include "shoes.h"
#include<bits/stdc++.h>
using namespace std;
long long count_swaps(vector<int> s) {
	int n = s.size(), ans1 = 0, ans2 = 0;
	vector<int> vis(n, 0);
	for (int i = 0; i < n; i++) {
		if (vis[i]) {
			continue;
		}
		int co = 0, ind = -1;
		for (int j = i+1; j < n; j++) {
			if (!vis[j] && s[i] == s[j]*-1) {
				vis[j] = 1;
				ind = j;
				break;
			}
			co++;
		}
		ans1 += co;
		if (s[ind] < 0) {
			ans1++;
		}
	}
	reverse(s.begin(), s.end());
	fill(vis.begin(), vis.end(), 0);
	for (int i = 0; i < n; i++) {
		if (vis[i]) {
			continue;
		}
		int co = 0, ind = -1;
		for (int j = i+1; j < n; j++) {
			if (!vis[j] && s[i] == s[j]*-1) {
				vis[j] = 1;
				ind = j;
				break;
			}
			co++;
		}
		ans2 += co;
		if (s[ind] > 0) {
			ans2++;
		}
	}
	return min(ans1, ans2);
}
#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...