比赛 Mister B的奇妙生活 评测结果 TTTTTATAAA
题目名称 B先生和PR移位 最终得分 40
用户昵称 WHZ0325 运行时间 6.547 s
代码语言 C++ 内存使用 4.10 MiB
提交时间 2017-09-08 21:14:52
显示代码纯文本
#include <cstdio>
#include <cstdlib>
int arr[1000001];
int main() {
	freopen("MrBB1.in","r",stdin);
	freopen("MrBB1.out","w",stdout);
	int n;
	scanf("%d",&n);
	int ans=0;
	for(int i=1;i<=n;i++) {
		scanf("%d",&arr[i]);
		arr[i]-=i;
		ans+=abs(arr[i]);
	}
	int next=0;
	for(int k=1;k<n;k++) {
		int sum=0;
		for(int i=1;i<=n;i++) {
			if(i==n-k+1) {
				arr[i]+=n-1;
			}
			else {
				arr[i]--;
			}
			sum+=abs(arr[i]);
		}
		if(sum<ans) {
			ans=sum;
			next=k;
		}
	}
	printf("%d %d\n",ans,next);
	fclose(stdin);
	fclose(stdout);
	return 0;
}