Pagini recente » Concursuri Virtuale | Cod sursa (job #2012891) | Cod sursa (job #1387445) | Cod sursa (job #2843891) | Cod sursa (job #2004066)
#include <iostream>
#include <fstream>
#include <unordered_map>
#include <cmath>
#define ll long long
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int NMax = 1e4 + 5;
const int inf = 1e9 + 5;
int T,N,G;
int dp[NMax];
int main() {
in>>N>>G;
for (int i=1;i <= N;++i) {
int w,p;
in>>w>>p;
for (int j=G;j - w >= 0; --j) {
dp[j] = max(dp[j],dp[j-w] + p);
}
}
out<<dp[G]<<'\n';
in.close();out.close();
return 0;
}