Pagini recente » Cod sursa (job #1292913) | Cod sursa (job #478932) | Cod sursa (job #2711728) | Monitorul de evaluare | Cod sursa (job #3120914)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
pair<int, int> v[100005];
int n, x, l;
int main()
{
f>>n>>x>>l;
int d, c;
for(int i = 1; i<=n; i++)
{
f>>d>>c;
v[i] = {d, c};
}
sort(v+1, v+n+1);
/*for(int i = 1; i<=n; i++)
{
g<<v[i].first<<" "<<v[i].second<<'\n';
}*/
int xmax;
int i = n;
int ans = 0;
while(x >= 0)
{
xmax = 0;
while(i >= 1 && v[i].first >= x-l+1)
{
xmax = max(xmax, v[i].second);
i--;
}
ans += xmax;
x-= l;
}
g<<ans;
return 0;
}