您的位置:首页 > 博客中心 > APP开发 >

cf 558A Lala Land and Apple Trees

时间:2022-03-11 11:32

#include<stdio.h>
#include<algorithm>
#include<string.h>
using namespace std;

struct data
{
    int x;
    int a;
};
data l[1024],r[1024];
bool c1(data q,data p)
{
    return q.x<p.x;
}

bool c2(data q,data p)
{
    return q.x>p.x;
}

int main()
{
    int n,i,t,p,ans1,ans2,p1,p2;
    while(~scanf("%d\n",&n))
    {
        p1=p2=0;
        for(i=0;i<n;i++)
        {
            scanf("%d%d",&t,&p);
            if(t>0)
            {
                r[p2].x=t;
                r[p2].a=p;
                p2++;
            }
            else
            {
                l[p1].x=t;
                l[p1].a=p;
                p1++;
            }

        }
        sort(l,l+p1,c2);
        sort(r,r+p2,c1);
        int u1[1024],u2[1024];
        memset(u1,0,sizeof(u1));
        memset(u2,0,sizeof(u2));
        for(ans1=0,i=0;;i++)
        {
            if(i%2==0)
            {
                if(i/2>=p1) break;
                ans1+=l[i/2].a;
            }
            else
            {
                if(i/2>=p2) break;
                ans1+=r[i/2].a;
            }
        }
        for(ans2=0,i=0;;i++)
        {
            if(i%2==1)
            {
                if(i/2>=p1) break;
                ans2+=l[i/2].a;
            }
            else
            {
                if(i/2>=p2) break;
                ans2+=r[i/2].a;
            }
        }
        printf("%d\n",max(ans1,ans2));
    }
    return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关推荐

电脑软件

本类排行

今日推荐

热门手游