Pagini recente » Cod sursa (job #703070) | Cod sursa (job #26146) | Cod sursa (job #1837918) | Cod sursa (job #2686804) | Cod sursa (job #1025010)
#include<fstream>
#define dim 10007
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int D[2][dim];
int w[dim],p[dim];
int n,j,i,G;
struct cub{
int gr,p;
}v[dim];
inline int maxim(int a,int b){
if(a<b)
return b;
return a;
}
int main () {
int x=0;
f>>n>>G;
for(i=1;i<=n;++i){
f>>v[i].gr>>v[i].p;
}
for(i=1;i<=n;++i){
x=1-x;
for(j=1;j<=G;++j){
D[x][j]=D[1-x][j];
if(v[i].gr<=j){
D[x][j]=maxim(D[x][j],D[1-x][j-v[i].gr]+v[i].p);
}
}
}
g<<D[x][G];
return 0;
}