Pagini recente » Rating Tatu Bogdan (ThotuMichael) | Cod sursa (job #1665383) | Cod sursa (job #3244559) | Cod sursa (job #814342) | Cod sursa (job #1612072)
#include <fstream>
#include <vector>
using namespace std;
ifstream is("rucsac.in");
ofstream os("rucsac.out");
int n, m, answ;
int g, p;
int main()
{
is >> n >> m;
vector<int> r(m + 1, -1);
r[0] = 0;
for ( int i = 1; i <= n; ++i )
{
is >> g >> p;
for ( int j = answ; j >= 0; --j )
if ( r[j] != -1 && j + g <= m && r[j] + p > r[j + g] )
{
r[j + g] = r[j] + p;
answ = max(answ, r[j + g]);
}
}
os << answ;
is.close();
os.close();
return 0;
}