Pagini recente » Cod sursa (job #1621803) | Cod sursa (job #3168272) | Cod sursa (job #2845402) | Cod sursa (job #310997) | Cod sursa (job #87059)
Cod sursa(job #87059)
#include <cstdio>
#include <algorithm>
const int maxn = 100001;
FILE *in = fopen("lupu.in","r"), *out = fopen("lupu.out","w");
struct oaie
{
int D, A;
};
int n, x, l;
oaie a[maxn];
//int T[maxn]; // timpul maxim la care oaia i poate fi aleasa
bool operator<(const oaie &x, const oaie &y)
{
return x.A > y.A;
}
void read()
{
fscanf(in, "%d %d %d", &n, &x, &l);
for ( int i = 1; i <= n; ++i )
fscanf(in, "%d %d", &a[i].D, &a[i].A);
}
int main()
{
read();
std::sort(a+1, a+1+n);
int answ = 0;
int p = 0;
// for ( int i = 1; i <= n; ++i )
// printf("%d %d\n", a[i].D, a[i].A);
for ( int i = 1; i <= n; ++i )
{
while ( a[i].D + p > x && i <= n )
++i;
answ += a[i].A;
p += l;
}
fprintf(out, "%d\n", answ);
return 0;
}