Pagini recente » Cod sursa (job #589803) | Cod sursa (job #1337509) | Cod sursa (job #2403068) | Cod sursa (job #2245359) | Cod sursa (job #2286345)
#include <fstream>
#define GMAX 10028
#define NMAX 5028
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int n, G;
int c[NMAX], g[NMAX], cmax[GMAX];
void read();
void pd();
int main(){
read();
pd();
fout << cmax[G];
fout.close();
return 0;
}
void read(){
int i;
fin >> n >> G;
for(i = 1; i <= n; i++)
fin >> g[i] >> c[i];
}
void pd(){
int i, x;
for(i = 1; i <= n; i++)
for(x = G; x >= 1; x--)
if(x >= g[i])
if(cmax[x] < c[i] + cmax[x - g[i]])
cmax[x] = c[i] + cmax[x - g[i]];
}