Pagini recente » Cod sursa (job #373667) | Cod sursa (job #2734665) | Cod sursa (job #1017057) | Cod sursa (job #226638) | Cod sursa (job #2975269)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 5e3;
const int GMAX = 1e4;
ifstream fin( "rucsac.in" );
ofstream fout( "rucsac.out" );
int g[NMAX];
int p[NMAX];
int dp[GMAX+1];
int main() {
int n, G, i, gr, ans;
fin >> n >> G;
for( i = 0; i < n; i++ ) {
fin >> g[i] >> p[i];
}
ans = 0;
for( i = 0; i < n; i++ ) {
for( gr = G; gr >= g[i]; gr-- ) {
dp[gr] = max( dp[gr], dp[gr-g[i]] + p[i] );
ans = max( ans, dp[gr] );
}
}
fout << ans;
return 0;
}