Cod sursa(job #1050582)

Utilizator rzvrzvNicolescu Razvan rzvrzv Data 8 decembrie 2013 19:17:45
Problema Lupul Urias si Rau Scor 16
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<cstdio>
#include<set>
#include<cstring>

using namespace std;

multiset <pair<int,int> > v;
int mx[500001],i,n,l,k,mxture,d,PUF,ture,s;

int main()
{
    freopen("lupu.in","r",stdin);
    freopen("lupu.out","w",stdout);
    scanf("%d%d%d",&n,&l,&k);
    for(i=1;i<=n;i++)
    {
        scanf("%d%d",&d,&PUF);
        v.insert(make_pair(PUF,d));
    }
    mxture=0;
    multiset <pair<int,int> > ::iterator it;
    memset(mx,0,sizeof(mx));
    for(it=v.begin();it!=v.end();it++)
    {
        ture=((l-(*it).second)/k)+1;
        if ((*it).first>mx[ture])
        {
            mx[ture]=(*it).first;
        }
        if(ture>mxture)
        {
            mxture=ture;
        }
    }
    s=0;
    for(i=1;i<=mxture;i++)
    {
        s+=mx[i];
    }
    printf("%d\n",s);
}