题号 NC25043
解法 直接贪心。
代码
#include<bits/stdc++.h>
using namespace std;
int n;long long ans,sum;
struct node{int t,d;}a[100005];
bool cmp(node x,node y){
return x.t*y.d<y.t*x.d;
}
int main(){
scanf("%d",&n);
for(int i=1;i<=n;++i)scanf("%d%d",&a[i].t,&a[i].d);
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;++i){ans+=sum*a[i].d;sum+=a[i].t*2;}
printf("%lld\n",ans);
return 0;
}


京公网安备 11010502036488号