AC一个点 10pts 样例全过 求大佬给测评数据
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int rock[11451419];
inline int read()
{
int x=0;
bool flag=1;
char c=getchar();
while(c<'0'||c>'9')
{
if(c=='-')
flag=0;
c=getchar();
}
while(c>='0'&&c<='9')
{
x=(x<<1)+(x<<3)+c-'0';
c=getchar();
}
return (flag?x:~(x-1));
}
bool cmp(int x,int y)
{
return x>y;
}
int main()
{
long long ans=0;
int n;
n=read();
for(int i=0;i<n;i++)
{
rock[i]=read();
}
sort(rock,rock+n,cmp);
ans=rock[0]*rock[0];
int l=0,r=n-1;
while(l<r)
{
ans=ans+(rock[r]-rock[l])*(rock[r]-rock[l]);
l++; r--;
}
if(n%2==1)
{
l++;
ans+=(rock[r]-rock[l])*(rock[r]-rock[l]);
}
cout<<ans;
return 0;
}