Cod sursa(job #3235867)

Utilizator Bianca2507Negret Bianca Bianca2507 Data 23 iunie 2024 10:33:22
Problema Lupul Urias si Rau Scor 8
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <fstream>
#include <algorithm>
#include <set>
#include <queue>
#define int long long
using namespace std;
ifstream cin("lupu.in");
ofstream cout("lupu.out");
struct oaie
{
    int d,lana,ales;
} v[100005];
int n,x,l;
int sol;
int cmp(oaie a,oaie b)
{
    if(a.lana>b.lana)
        return 1;
    else if(a.lana==b.lana&&a.d>b.d)
        return 1;
    else
        return 0;

}
signed main()
{
    cin>>n>>x>>l;
    for(int i=1; i<=n; i++)
        cin>>v[i].d>>v[i].lana;
    sort(v+1,v+n+1,cmp);
    for(int timp=0; timp<=x; timp+=l)
    {
        bool ok=0;
        for(int i=1; i<=n; i++)
        {
            if(v[i].ales==0)
            {
                if(timp+v[i].d<=x)
                {
                    sol+=v[i].lana;
                    v[i].ales=1;
                    ok=1;
                }
            }
            if(ok==1)
                break;
        }
    }
    cout<<sol;
    return 0;
}