Submission #1218859

#TimeUsernameProblemLanguageResultExecution timeMemory
1218859viduxSorting (IOI15_sorting)C++17
0 / 100
1 ms324 KiB
#include "sorting.h"

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef pair<ll, ll> pll;
typedef vector<ll> vl;

const ll LLINF = 1e18;

int findSwapPairs(int N, int a[], int M, int X[], int Y[], int P[], int Q[]) {
	int n = N;
	int l = 0, r = M;
	int ans = 0;
	auto opCnt = [&]() -> ll {
		vi pos(n);
		vi b(n);
		ll cnt = 0;
		for (int i = 0; i < n; i++) pos[a[i]] = i, b[i] = a[i];
		for (int i = 0; i < n; i++) {
			if (b[i] != i) {
				int p = pos[i];
				swap(b[i], b[p]);
				swap(pos[i], pos[p]);
				P[cnt] = i;
				Q[cnt] = p;
				cnt++;
			}
		}
		return cnt;
	};
	cout << opCnt() << endl;
	return opCnt();
}
#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...