#include<bits/stdc++.h>
using namespace std;
int n,cnt,a[100001];
bool cmp(int x,int y){
return x>y;
}
int main(){
cin>>n;
for(int i=0;i<n;i++) cin>>a[i];
sort(a,a+n,cmp);
cnt=pow(a[0],2);
for(int i=1;i<n;i++){
cnt+=pow(a[i]-a[i+1],2);
}
cout<<cnt;
return 0;
}
我的思路是:先把所有的排序,从最高的跳起(保证第一步最大),再依次按高度往下跳