Pagini recente » Cod sursa (job #2884347) | Cod sursa (job #3148849) | Cod sursa (job #2836395) | Cod sursa (job #3225137) | Cod sursa (job #2156719)
#include <cstdio>
#include <algorithm>
using namespace std;
struct kk{
int m, g;
float p;
}v[5005];
int d[10005];
int main()
{
freopen("rucsac.in", "r", stdin);
freopen("rucsac.out", "w", stdout);
int n, m, pr, g, i, s, nr, j;
scanf("%d%d", &n, &m);
for(i = 0;i < n;i++){
scanf("%d%d", &g, &pr);
v[i].g = g;
v[i].m = pr;
}
nr = 0;
for(i = 0;i < n;i++){
for(j = nr;j >= 0;j--){
if(j + v[i].g <= m){
if(d[j + v[i].g] < d[j] + v[i].m){
d[j + v[i].g] = d[j] + v[i].m;
if(d[j + v[i].g] > nr)
nr = d[j + v[i].g];
}
}
}
}
printf("%d", nr);
return 0;
}