Cod sursa(job #1758724)

Utilizator TudoseSanzianaTudose Sanziana TudoseSanziana Data 17 septembrie 2016 18:29:36
Problema Lupul Urias si Rau Scor 16
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
struct oaie
{
    int d,a;
};
struct acm
{
    int i,a;
};
bool cmp(acm a,acm b)
{
    return (a.a>b.a);
}
oaie o[100005];
vector<acm> v;
int main()
{
    freopen("lupu.in","r",stdin);
    freopen("lupu.out","w",stdout);
    int n,x,l,i;
    acm temp;
    long long ans=0;
    scanf("%d%d%d",&n,&x,&l);
    for(i=1; i<=n; ++i)
        scanf("%d%d",&o[i].d,&o[i].a);
    bool ok=1;
    while(ok)
    {
        ok=0;
        v.clear();
        for(i=1; i<=n; ++i)
        {
            if(o[i].d<=x)
            {
                ok=1;
                o[i].d+=l;
                if(o[i].d>x)
                {
                    temp.i=i;
                    temp.a=o[i].a;
                    v.push_back(temp);
                }
            }
        }
        if(!v.empty())
        {
            sort(v.begin(),v.end(),cmp);
            ans+=v[0].a;
        }
    }
    printf("%lld\n",ans);
    return 0;
}