题解:
就是从小到大对(ai-bi)进行排序
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int inf = 0x3f3f3f3f;
const int mod = 1e9 + 7;
const int N = 1e5 + 10;
struct node{
int a,b,t;
} a[N];
bool cmp(node p1,node p2){
return p1.t>p2.t;
}
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int n; cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i].a>>a[i].b, a[i].t = a[i].a-a[i].b;
sort(a+1,a+1+n,cmp);
ll ans = 0;
for(int i=1;i<=n;i++){
ans += 1ll * (a[i].a-a[i].b) * i + 1ll * a[i].b * n - a[i].a;
}
cout<<ans<<endl;
}