Pagini recente » Cod sursa (job #72021) | Cod sursa (job #2022947) | Cod sursa (job #2058396) | Cod sursa (job #2991312) | Cod sursa (job #2077181)
#include <iostream>
#include <fstream>
using namespace std;
#define maxn 5001
#define maxg 10001
ifstream fin("energii.in");
ofstream fout("energii.out");
int w[maxn], p[maxn];
int Optim[maxg];
int main() {
int n, g;
fin>>n>>g;
for (int i = 1; i <= n; ++i) {
fin>>w[i]>>p[i];
}
Optim[0] = 0;
int sol = 0;
for( int i = 1; i <= n; i++)
for( int j = g - w[i]; j >= 0; j--) {
if( Optim[j+w[i]] < Optim[j] + p[i] )
{
Optim[j+w[i]] = Optim[j] + p[i];
if( Optim[j+w[i]] > sol)
sol = Optim[j+w[i]];
}
}
fout<<sol;
return 0;
}