Pagini recente » Cod sursa (job #1360001) | Cod sursa (job #434984) | Cod sursa (job #235299) | Cod sursa (job #1399837) | Cod sursa (job #2416837)
#include <bits/stdc++.h>
using namespace std;
#define w first
#define p second
pair<int, int> obj[5005];
int dp[10005];
int main()
{
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int n, G;
fin >> n >> G;
for(int i = 1; i <= n; ++i)
fin >> obj[i].w >> obj[i].p;
for(int i = 1; i <= G; ++i) dp[i] = -1e9;
for(int i = 1; i <= n; ++i){
for(int j = G; j >= obj[i].w; --j)
dp[j] = max(dp[j], dp[j - obj[i].w] + obj[i].p);
}
fout << dp[G];
return 0;
}