比赛 CSP2023-J模拟赛 评测结果 AAAAAAAAAATTTTTTTTTT
题目名称 排列变换 最终得分 50
用户昵称 是驼不是坨 运行时间 10.063 s
代码语言 C++ 内存使用 37.30 MiB
提交时间 2023-10-18 19:35:37
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;

int n,ans,mv;
int a[10000006];

int main(){
    freopen("permutrans.in","r",stdin);
    freopen("permutrans.out","w",stdout);
    cin>>n;
    for(int i=1;i<=n;i++){
    	cin>>a[i];
    	a[i+n] = a[i];
    	if(a[i]>=i) ans++;
	}
	for(int i=2*n;i>n;i--){
		int mam=0;
		int fg=1;
		for(int j=i-n+1;j<=i;j++){
			if(a[j]>=fg) mam++;
			fg++;
		}
		if(mam>ans){
			ans=mam;
			mv=2*n-i;
		}
	}
	cout<<ans<<" "<<mv;
}