Cod sursa(job #1218414)

Utilizator cojocarugabiReality cojocarugabi Data 10 august 2014 23:06:12
Problema Lupul Urias si Rau Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
# include <fstream>
# include <iostream>
# include <algorithm>
# include <vector>
# include <string>
# define nmax 100005
# define pb push_back
# include <queue>
using namespace std;
ifstream fi("lupu.in");
ofstream fo("lupu.out");
vector <int> S[nmax];
priority_queue <int> Max;
int main()
{
    long long p,u,x,y,Sum=0,M=0,n;
    fi>>n>>p>>u;
    for (int i=1;i<=n;++i)
    {
        fi>>x>>y;
        if (p>x) S[(p-x)/u].pb(y),M=max(M,(p-x)/u);
    }
    for (int i=M;i>=0;--i)
    {
        for (int j=0;j<S[i].size();++j)
            Max.push(S[i][j]);
        if (!Max.empty()) Sum+=(Max.top()),Max.pop();
    }
    fo<<Sum<<"\n";
}