hdu 4070 War——11年福州网络赛水题

简单贪心,距离远的先繁殖。


排序一下,更新答案即可。

#define M 200005
int T,n;
struct node
{
    int d,t;
}d[M];
bool cmp(node a,node b)
{
    if (a.t!=b.t) return a.t>b.t;
    return a.d>b.d;
}
int main()
{
    int i,j;
    scanf("%d",&T);
    for (int ca=1;ca<=T;ca++)
    {
        scanf("%d",&n);
        for (i=0;i<n;i++)
        {
            scanf("%d%d",&d[i].d,&d[i].t);
        }
        sort(d,d+n,cmp);
        int ans=0,tmp=0,time=0;
        for (i=0;i<n;i++)
        {
            time+=d[i].d;
            ans=max(time+d[i].t,ans);
        }
        printf("Case %d: %d\n",ca,ans);
    }
    return 0;
}


展开阅读全文

没有更多推荐了,返回首页