Pagini recente » Cod sursa (job #1929434) | Cod sursa (job #327366) | Cod sursa (job #2677607) | Cod sursa (job #1698195) | Cod sursa (job #1092484)
#include <fstream>
#include <iomanip>
#include <vector>
using namespace std;
ifstream is("rucsac.in");
ofstream os("rucsac.out");
int S, n, x, y, nr;
vector<int> a;
int main()
{
is >> n >> S;
a = vector<int>( S + 1, -1 );
a[0] = 0;
for ( int i = 1; i <= n; i++ )
{
is >> x >> y;
for ( int j = S - x; j >= 0; j-- )
if ( a[j] != -1 && a[j+x] < a[j] + y )
{
a[j+x] = a[j] + y;
nr = max( nr, a[j+x] );
}
}
os << nr;
is.close();
os.close();
return 0;
}