Pagini recente » Cod sursa (job #2287536) | Cod sursa (job #1172307) | Cod sursa (job #1369098) | Cod sursa (job #391552) | Cod sursa (job #3241692)
#include <iostream>
using namespace std;
int g[5005], p[10005];
int dp[5005][10005];
int main()
{
int n,G;
cin>>n>>G;
for(int i=1;i<=n;i++){
cin>>g[i]>>p[i];
}
dp[1][g[1]]=p[1];
for(int i=2;i<=n;i++){
for(int j=0;j<=G;j++){
dp[i][j]=max(dp[i-1][j],dp[i-1][j-g[i]]+p[i]);
}
}
int rasp=0;
for(int j=0;j<=G;j++){
rasp=max(rasp,dp[n][j]);
}
cout<<rasp;
return 0;
}