Submission #1275338

#TimeUsernameProblemLanguageResultExecution timeMemory
1275338rafsanamin2020Arranging Shoes (IOI19_shoes)C++20
50 / 100
1096 ms2732 KiB
#include <bits/stdc++.h>
#include "shoes.h"

using namespace std;

long long count_swaps1(std::vector<int> s)
{
	int N = s.size(), p = 0, n = 0;

	queue<int> neg;
	queue<int> pos;

	int swp = 0;

	for (int i = 0; i < N; i += 2)
	{
		if (s[i + (neg.size() % 2)] > 0)
		{
			neg.push(i);
		}
		if (s[i + 1 - (neg.size() % 2)] < 0)
		{
		}
	}

	return std::max(p, n);
}

long long count_swaps4(std::vector<int> s)
{
	long long N = s.size() / 2;

	return N * (N - 1) / 2;
}

long long count_swaps(std::vector<int> s)
{
	long long N = s.size(), ans = 0;

	for (int i = 0; i < N; i += 2)
	{
		for (int j = i + 1; j < N; j++)
		{
			// cout << i << " " << j << " " << s[i] << " " << s[j] << " " << ans << "\n";

			// for (int x : s)
			// {
			// 	cout << x << " ";
			// }
			// cout << "\n";

			if (-s[i] == s[j])
			{
				ans += ((j - i) - (s[i] < 0 ? 1 : 0));
				s.insert(s.begin(), 69);
				s.erase(s.begin() + j + 1);
				break;
			}
		}
	}

	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...