Pagini recente » Cod sursa (job #1428685) | Cod sursa (job #2650525) | Cod sursa (job #1580368) | Cod sursa (job #1905817) | Cod sursa (job #2724211)
#include <fstream>
#define GMAX 10000
using namespace std;
ifstream fin( "rucsac.in" );
ofstream fout( "rucsac.out" );
int linii[2][GMAX + 1];
int point;
int max( int a, int b ) {
return ( a > b ) ? a : b;
}
int main() {
int n, g, w, p;
fin >> n >> g;
point = 1;
for ( int i = 1; i <= n; i ++ ) {
fin >> w >> p;
for ( int k = w; k <= g; k ++ )
linii[point][k] = max( linii[1 - point][k], linii[1 - point][k - w] + p );
point = 1 - point;
}
fout << linii[1 - point][g] << "\n";
return 0;
}