Pagini recente » Cod sursa (job #2647582) | Cod sursa (job #2263396) | Cod sursa (job #2265460) | Rating Papaya Albastru (Pavelutz) | Cod sursa (job #1774621)
#include <fstream>
using namespace std;
ifstream f ("energii.in");
ofstream a("energii.out");
int g, w;
int G[1000],W[1000];
int d[1000][1000];
int max (int a , int b)
{
if ( a > b) return a;
if(a == b) return a;
return b;
}
int solve ()
{
for(int i = 0 ; i <g ;i++ )
{
for(int j= 0 ; j <= w ; j++)
{
if(j < W[i+1]) d[i+1][j] = d[i][j];
else d[i+1][j] = max(d[i][j],d[i][j - W[i]]+ G[i]);
}
}
if( d[g][w] >= w) return d[g][w];
else return -1;
}
int main()
{
f>> g>>w;
for (int i =0; i < g; i++)
{
f>>G[i]>>W[i];
}
a<<solve();
}