Pagini recente » Cod sursa (job #2473796) | Cod sursa (job #855827) | Cod sursa (job #89037) | Cod sursa (job #915618) | Cod sursa (job #3266549)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 5002;
const int VMAX = 1e4+2;
using pii = pair<int, int>;
int n,g,dp[VMAX];
pii v[NMAX];
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
template<typename T>
void maxSelf(T &a, T b){
a = max(a, b);
}
int main() {
fin >> n >> g;
for(int i = 1; i <= n; i++){
int w, p;
fin >> w >> p;
v[i] = {w, p};
}
for(int i = 1; i <= n; i++){
auto [w, p] = v[i];
for(int j = g-w; j >= 0; j--){
maxSelf(dp[j+w], dp[j]+p);
}
}
fout << dp[g];
return 0;
}