Pagini recente » Cod sursa (job #3278333) | Cod sursa (job #2112576) | Cod sursa (job #1067608) | Cod sursa (job #1387188) | Cod sursa (job #423611)
Cod sursa(job #423611)
#include <stdio.h>
#include <stdlib.h>
#define NMAX 100005
const char *in = "gutui.in";
const char *out = "gutui.out";
int N, H, U, Gmax;
int h[NMAX], g[NMAX], ind[NMAX];
int cmp (const void* a, const void *b)
{
return h[*(int*)b] - h[*(int*)a];
}
int main (void)
{
freopen (in, "r", stdin);
freopen (out, "w", stdout);
scanf ("%d%d%d", &N, &H, &U);
int i, j;
for (i = 0; i < N; ++i) {
scanf ("%d%d", h+i, g+i);
ind[i] = i;
}
qsort (ind, N, sizeof(int), cmp);
if (h[ind[0]] <= H) Gmax = g[ind[0]];
j = 1;
for ( i = 1; i < N; ++i)
{
if (h[ind[i]] + j*U <= H)
{
Gmax += g[ind[i]];
j++;
}
else continue;
}
printf ("%d\n", Gmax );
return 0;
}