Submission #1153133

#TimeUsernameProblemLanguageResultExecution timeMemory
1153133ezzzayGroup Photo (JOI21_ho_t3)C++20
5 / 100
5093 ms424 KiB
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define ff first
#define ss second
#define pb push_back
const int N=3e5+5;
int a[N];
signed main(){
	int n;
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	vector<int>v(n);
	
	for(int i=0;i<n;i++)v[i]=i;
	int ans=n*n;
	do{
		vector<int>tmp(n);
		for(int i=0;i<n;i++){
			tmp[i]=a[v[i]];
		}
		bool u=1;
		int k=0;
		for(int i=0;i<n;i++){
			for(int j=i+1;j<n;j++){
				if(tmp[j]<tmp[i] and tmp[i]-tmp[j] >= (j-i)*2){
					u=0;
				}
				if(v[j]<v[i])k++;
			}
		}
		if(u)ans=min(ans,k);
		
	}while(next_permutation(v.begin(),v.end()));
	cout<<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...