Pagini recente » Cod sursa (job #2513479) | Cod sursa (job #3155227) | Cod sursa (job #3184234) | Cod sursa (job #2172523) | Cod sursa (job #2493499)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int dp[2][10004];
int main()
{
int n,G,i,j,uob,gob;
int l = 1;
fin>>n>>G;
for(i = 1; i <= n; i++){
fin>>gob>>uob;
for(j = 1; j <= G; j++){
if(j - gob >= 0){
dp[l][j] = max(dp[1-l][j],dp[1-l][j-gob] + uob);
}else{
dp[l][j] = dp[1-l][j];
}
}
l = 1-l;
}
fout<<dp[1-l][G]<<endl;
return 0;
}