Pagini recente » Cod sursa (job #1047264) | Cod sursa (job #1314662) | Cod sursa (job #1275704) | Cod sursa (job #1464228) | Cod sursa (job #2395795)
#include <iostream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int pd[10010];
int val[5010];
int g[5010];
int main()
{
int n,G;
cin>>n>>G;
for(int i=1;i<=n;i++){
cin>>g[i]>>val[i];
for(int j=G-g[i];j>=1;j--){
if(dp[j]!=0 || j==0){
dp[j+g[i]]=max(dp[j+g[i]],dp[j]+v[i]);
}
}
}
int ans=0;
for(int i=G;i>=1;i--){
if(dp[i]!=0){
ans=max(ans,dp[i]);
}
}
cout<<ans;
return 0;
}