Pagini recente » Cod sursa (job #1265529) | Cod sursa (job #1432589) | Cod sursa (job #1255955) | Cod sursa (job #1514912) | Cod sursa (job #3280743)
#include <bits/stdc++.h>
using namespace std;
#define cin fein
#define cout gout
#define NMAX 11000
#define INF 1000001
#define pii pair<int,int>
ifstream fein("rucsac.in");
ofstream gout("rucsac.out");
//priority_queue<int, vector<int>, greater<int>> q;
long long int n, gmax, g[NMAX], v[NMAX], dp[NMAX][NMAX];
int main()
{
cin>>n>>gmax;
for(int i=1;i<=n;i++)
{
cin>>g[i]>>v[i];
}
for(int i=1;i<=n;i++)
{
for(int j=0;j<=gmax;j++)
{
if(j>=g[i])
dp[i%2][j]=max(dp[(i-1)%2][j], dp[(i-1)%2][j-g[i]]+v[i]);
else
dp[i%2][j]=dp[(i-1)%2][j];
}
}
// for(int i=0;i<=n;i++)
// {
// for(int j=0;j<=gmax;j++)
// {
// cout<<dp[i][j]<<" ";
// }
// cout<<endl;
// }
cout<<dp[n%2][gmax];
return 0;
}