Pagini recente » Cod sursa (job #1934700) | Cod sursa (job #1605365) | Cod sursa (job #1987577) | Cod sursa (job #2104148) | Cod sursa (job #1843430)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n, g, w[5005], p[5005];
long long dp[5005][10005];
int main(){
cin>>n>>g;
for(int i=1; i<=n; ++i) cin>>w[i]>>p[i];
for(int i=1; i<=n;++i){
for(int j=1; j<=g; ++j){
if(w[i]>j) dp[i][j]=dp[i-1][j];
else dp[i][j]=max(dp[i-1][j], dp[i-1][j-w[i]]+p[i]);
}
}
cout<<dp[n][g];
return 0;
}