Pagini recente » Cod sursa (job #2971235) | Cod sursa (job #2514646) | Cod sursa (job #3238330) | Cod sursa (job #1095627) | Cod sursa (job #1546973)
#include <fstream>
using namespace std;
int n,g,i,gr[5001],p[5001],d[5001],x,j,maxim;
ifstream fin ("rucsac.in");
ofstream fout ("rucsac.out");
int main (){
fin>>n>>g;
for (i=1;i<=n;i++){
fin>>gr[i]>>p[i];
}
//for (i=1;i<=5001;i++)
// x = -1;
maxim = 0;
d[0] = 0;
for (i=1;i<=n;i++){
for (j=g;j>=gr[i];j--){
//if (j+gr[i] < g)
d[j] = max ( d[j] , d[j-gr[i]] + p[i]);
if (d[j] > maxim)
maxim = d[j];
}
}
fout<<maxim;
/* for (i=5000;i>=0;i--)
if (d[i] != -1){
fout<<d[i];
break;
}
*/
return 0;
}