Submission #921404

#TimeUsernameProblemLanguageResultExecution timeMemory
921404TAhmed33Group Photo (JOI21_ho_t3)C++98
5 / 100
5009 ms348 KiB
#include <bits/stdc++.h>
using namespace std;
int main () {
	int n; cin >> n; int a[n + 1] = {}; for (int i = 1; i <= n; i++) {
		cin >> a[i];
	}
	vector <int> x;
	for (int i = 1; i <= n; i++) x.push_back(i);
	int mn = 1e9;
	do {
		bool flag = 1;
		for (int i = 0; i + 1 < (int)x.size(); i++) {
			flag &= x[i] - x[i + 1] <= 1;
		}
		if (flag) {
			int pos[n + 1] = {}; for (int i = 0; i < n; i++) pos[x[i]] = i;
			int cnt = 0;
			for (int i = 1; i <= n; i++) {
				for (int j = i - 1; j >= 1; j--) {
					if (pos[a[i]] < pos[a[j]]) {
						cnt++;
					}
				}
			}
			mn = min(mn, cnt);
		}
	} while (next_permutation(x.begin(), x.end()));
	cout << mn << '\n';
}
#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...