救救
查看原帖
救救
318025
xztl楼主2023/2/11 22:08

有没有大佬帮我改一下代码,人麻了

#include <bits/stdc++.h>

using namespace std;

long long int n, nums[1000005], ci[1000005], sum[1000005], avg;

int main(){
	cin >> n;
	sum[0] = 0;
	for (int i = 1; i <= n; i++){
		cin >> nums[i];
		sum[i] = sum[i-1]+nums[i];
	}
	avg = sum[n]/n;
	for (int i = 1; i <= n; i++){
		ci[i] = sum[i]-avg*i;
	}
	sort(ci+1, ci+1+n);
	long long int mid = ci[(1+n)/2], ans;
	for (int i = 1; i <= n; i++){
		ans += abs(mid-ci[i]);
	}
	cout << ans;
	return 0;
}
2023/2/11 22:08
加载中...