求解,七十分过不去了
查看原帖
求解,七十分过不去了
60871
树下楼主2021/4/11 23:12

感觉思路没问题啊,代码也看了好多遍了

#include<bits/stdc++.h>
using namespace std;
int n,m,sum,tot=2147483647;
int a[1001];
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
		scanf("%d",&a[i]);
	sort(a+1,a+1+n);
	for(int i=1;i<=n;i++){
		sum=0;
		for(int j=i+1;j<=n;j++)
		if(a[j]>a[i]+17){
			m=j-1;
			break;
		}
		for(int j=1;j<i;j++)
			sum+=(a[i]-a[j])*(a[i]-a[j]);
		for(int j=m+1;j<=n;j++)
			sum+=(a[j]-a[i]-17)*(a[j]-a[i]-17);
		tot=min(sum,tot);
	}
	printf("%d",tot);
} 
2021/4/11 23:12
加载中...