Pagini recente » Cod sursa (job #2844275) | Cod sursa (job #56781) | Cod sursa (job #3216212) | Cod sursa (job #2780489) | Cod sursa (job #2762613)
#include<string.h>
#include<stdio.h>
int N, G;
int w[10000], p[10000];
int a[10000];
int main() {
freopen("rucsac.in", "r", stdin);
freopen("rucsac.out", "w", stdout);
scanf("%d %d", &N, &G);
for (int i = 1; i <= N; i++)
{
scanf("%d %d", &w[i], &p[i]);
}
a[0] = 0; int ans = 0;
for( int i = 1; i <= N; i++)
for( int j = G - w[i]; j >= 0; j--)
{
if( a[j+w[i]] < a[j] + p[i] )
{
a[j+w[i]] = a[j] + p[i];
if (a[j+w[i]] > ans)
ans = a[j+w[i]];
}
}
printf("%d", ans);
return 0;
}