地址:https://acm.nefu.edu.cn/JudgeOnline/contestShow.php
思路和我上一篇相同,上一篇地址:https://blog.csdn.net/xiaoshazheng/article/details/84978853
题目大意:
思路:(感觉手写更快,传图片了)
最后结果写漏了,f(n)为图片上结果的1/2。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn=1e5+5;
long long s1[maxn],s2[maxn],s3[maxn];
bool cmp(long long a,long long b)
{
return a>b;
}
int main()
{
int t;
long long sum,n,i,x,y,z;
while(scanf("%lld",&n)!=EOF)
{
for(i=0;i<n;i++)
{
scanf("%lld%lld%lld",&x,&y,&z);
s1[i]=x-y;
s2[i]=x-z;
s3[i]=y-z;
}
sort(s1,s1+n,cmp);
sort(s2,s2+n,cmp);
sort(s3,s3+n,cmp);
sum=0;
for(i=0;i<n;i++)
{
sum+=(s1[i]+s2[i]+s3[i])*(n-1-2*i);
}
sum=sum/2;
printf("%lld\n",sum);
}
return 0;
}