Cod sursa(job #2345420)
Utilizator | Data | 16 februarie 2019 12:36:50 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.39 kb |
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n, g, a[2][10001];
bool e;
int main() {
cin >> n >> g;
for(int i=0; i<n; i++, e=!e) {
int g1, p1;
cin >> g1 >> p1;
for(int j=0; j<g1; j++)
a[!e][j] = a[e][j];
for(int j=g1; j<=g; j++)
a[!e][j] = max(a[e][j], p1 + a[e][j - g1]);
}
cout << a[e][g];
return 0;
}