| 记录编号 | 276601 | 评测结果 | AAAAAAAAAA | 
    
        | 题目名称 | 180.[USACO Open07] 保护花朵 | 最终得分 | 100 | 
    
        | 用户昵称 |  Mealy | 是否通过 | 通过 | 
    
        | 代码语言 | C++ | 运行时间 | 0.137 s | 
    
        | 提交时间 | 2016-07-04 09:54:53 | 内存使用 | 10.90 MiB | 
    
    
    
    		显示代码纯文本
		
		#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
const int nmax=1000086;
int n,vsum=0;
unsigned long long ans=0;
struct haw
{
	int T;
	int D;
	double R;
}ha[nmax];
bool cmp(haw a,haw b)
{
	return a.R>b.R;
}
int main()
{
	freopen("flowers.in","r",stdin);
	freopen("flowers.out","w",stdout);
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d",&ha[i].T,&ha[i].D);
		ha[i].R=double(ha[i].D)/double(ha[i].T);
		vsum+=ha[i].D;
	}
	sort(ha+1,ha+n+1,cmp);
	for(int i=1;i<=n;i++)
	{
		vsum-=ha[i].D;
		ans+=2*ha[i].T*vsum;
	}
	printf("%lld",ans);
	return 0;
}