Pagini recente » Cod sursa (job #472806) | Istoria paginii utilizator/mariasfiraiala | Cod sursa (job #1593584) | Profil aIexpetrescu | Cod sursa (job #1446618)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fi("rucsac.in");
ofstream fo("rucsac.out");
int a[2][5001], g, gmax, p, pmax, n, i, j;
int main() {
fi >> n >> gmax;
for(i=1;i<=n;i++){
fi >> g >> p;
for(j=1;j<=gmax;j++)
if(j >= g)
if(p + a[0][j-g] > a[1][j])
a[1][j] = a[0][j-g] + p;
else a[1][j] = a[0][j];
for(j=0;j<=gmax;j++) a[0][j] = a[1][j];
}
fo << a[1][gmax];
return 0;
}
/*
* 1 2 3 4 5 6 7 8 9 10
a 0 0 7 7 7 7 7 7 7 7
b 0 0 7 7 7 11
g 3 3 1 1 2 1
p 7 4 2 9 4 5
*/