Cod sursa(job #1496818)
Utilizator | Data | 5 octombrie 2015 17:34:16 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("in.in");
ofstream g("out.out");
const int Nmax=5e3+5; //5005
int D[Nmax][Nmax];
int main()
{
int n,GM,x,value;
f>>n>>GM;
for(int i=1; i<=n; i++)
{
f>>x>>value;
for(int j=1;j<=GM;j++){
if(j>=x)
D[i][j]= max(D[i-1][j], D[i-1][j-x]+value);
else
D[i][j]=D[i-1][j];
}
}
g<<D[n][GM];
return 0;
}