Pagini recente » preONI 2008 - Clasament general, Clasele 5-8 | Cod sursa (job #1220631) | Diferente pentru preoni-2007/runda-4/solutii intre reviziile 34 si 15 | Cod sursa (job #1697777) | Cod sursa (job #1699864)
#include <fstream>
#define NM 5005
#define GM 10005
using namespace std;
int d[2][GM];
int gr[NM], p[NM], n, m;
int main()
{
ifstream f("rucsac.in");
ofstream g("rucsac.out");
bool w = 0;
f >> n >> m;
for(int i = 1; i <= n; ++i)
f >> gr[i] >> p[i];
for(int i = 1; i <= n; ++i)
{
for(int j = 0; j <= m; ++j)
{
d[0^w][j] = d[1^w][j];
if(gr[i] <= j)
d[0^w][j] = max(d[0^w][j], d[1^w][j-gr[i]]+p[i]);
}
w ^= 1;
}
g << d[1^w][m];
}