这能过?这能过?这能过?这能过?这能过?这能过?这能过?这能过?这能过?
#define int __int128
int n,ans=-1,sum;
signed main(){
cin>>n;
int a[n+1],b[n+1],c[n+1];
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=n;i++) cin>>b[i];
for(int i=1;i<=n;i++) sum+=(a[i]+b[i]);
for(int i=1;i<=n;i++){
if(max(a[i]*n+a[i]*n-sum,-a[i]*n-a[i]*n+sum)>max(b[i]*n+b[i]*n-sum,-b[i]*n-b[i]*n+sum)) c[i]=a[i];
else c[i]=b[i];
}
sum=0;
for(int i=1;i<=n;i++) sum+=c[i];
int c_ba=sum,tmp=0;
for(int i=1;i<=n;i++) tmp+=(c[i]*n-c_ba)*(c[i]*n-c_ba);
ans=max(ans,tmp/n);
cout<<ans;
}
数据:
in:
3
1 1 1
2 2 2
ans:(题解代码跑出来的结果)
2
out:
0