Submission #1104059

# Submission time Handle Problem Language Result Execution time Memory
1104059 2024-10-22T16:01:10 Z Champ_Naman Group Photo (JOI21_ho_t3) C++17
5 / 100
5000 ms 460 KB
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define nl '\n'

inline void solve(){
	int n;
	cin>>n;
	int a[n];
	for(int i=0; i<n; i++) cin>>a[i];

	vector<int> v(n);
	iota(v.begin(), v.end(), 1);

	int ans = 1e18;
	do{
		auto b = v;
		bool tf = true;
		for(int i=0; i<n-1; i++){
			if(b[i] >= b[i+1]+2) tf = false;
		}
		if(!tf) continue;

		int subans = 0;
		for(int i=0; i<n; i++){
			if(a[i] == b[i]) continue;

			for(int j=i+1; j<n; j++){
				if(a[i] != b[j]) continue;

				for(int k=j; k>i; k--){
					swap(b[k], b[k-1]);
					subans++;
					if(subans >= ans) break;
				}
				break;
			}
			if(subans >= ans) break;
		}

		ans = min(ans, subans);
	}while(next_permutation(v.begin(), v.end()));

	cout<<ans<<nl;
}

signed main(){
	ios_base::sync_with_stdio(0);
	cin.tie(NULL);cout.tie(NULL);

	int t = 1;
	//cin>>t;
	while(t--) solve();

	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB Output is correct
2 Correct 1 ms 336 KB Output is correct
3 Correct 1 ms 356 KB Output is correct
4 Correct 1 ms 336 KB Output is correct
5 Correct 1 ms 336 KB Output is correct
6 Correct 1 ms 336 KB Output is correct
7 Correct 9 ms 336 KB Output is correct
8 Correct 9 ms 460 KB Output is correct
9 Correct 9 ms 336 KB Output is correct
10 Correct 9 ms 336 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB Output is correct
2 Correct 1 ms 336 KB Output is correct
3 Correct 1 ms 356 KB Output is correct
4 Correct 1 ms 336 KB Output is correct
5 Correct 1 ms 336 KB Output is correct
6 Correct 1 ms 336 KB Output is correct
7 Correct 9 ms 336 KB Output is correct
8 Correct 9 ms 460 KB Output is correct
9 Correct 9 ms 336 KB Output is correct
10 Correct 9 ms 336 KB Output is correct
11 Execution timed out 5041 ms 336 KB Time limit exceeded
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB Output is correct
2 Correct 1 ms 336 KB Output is correct
3 Correct 1 ms 356 KB Output is correct
4 Correct 1 ms 336 KB Output is correct
5 Correct 1 ms 336 KB Output is correct
6 Correct 1 ms 336 KB Output is correct
7 Correct 9 ms 336 KB Output is correct
8 Correct 9 ms 460 KB Output is correct
9 Correct 9 ms 336 KB Output is correct
10 Correct 9 ms 336 KB Output is correct
11 Execution timed out 5041 ms 336 KB Time limit exceeded
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB Output is correct
2 Correct 1 ms 336 KB Output is correct
3 Correct 1 ms 356 KB Output is correct
4 Correct 1 ms 336 KB Output is correct
5 Correct 1 ms 336 KB Output is correct
6 Correct 1 ms 336 KB Output is correct
7 Correct 9 ms 336 KB Output is correct
8 Correct 9 ms 460 KB Output is correct
9 Correct 9 ms 336 KB Output is correct
10 Correct 9 ms 336 KB Output is correct
11 Execution timed out 5041 ms 336 KB Time limit exceeded
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 336 KB Output is correct
2 Correct 1 ms 336 KB Output is correct
3 Correct 1 ms 356 KB Output is correct
4 Correct 1 ms 336 KB Output is correct
5 Correct 1 ms 336 KB Output is correct
6 Correct 1 ms 336 KB Output is correct
7 Correct 9 ms 336 KB Output is correct
8 Correct 9 ms 460 KB Output is correct
9 Correct 9 ms 336 KB Output is correct
10 Correct 9 ms 336 KB Output is correct
11 Execution timed out 5041 ms 336 KB Time limit exceeded
12 Halted 0 ms 0 KB -