Pagini recente » Cod sursa (job #2852730) | Cod sursa (job #2889281) | Cod sursa (job #2778476) | Cod sursa (job #2838838) | Cod sursa (job #1823881)
#include <iostream>
#include <fstream>
using namespace std;
long a [ 5000 * 10000];
short n , g;
int w [ 10000 ] , p [ 10000 ];
int rucsac ( ){
int i , j ;
for ( i = 1 ; i <= n ; i++)
for ( j = g ; j >= w [ i ] ; j--)
a [ j ] = max ( a [ j ] , a [ j - w[ i ]] + p [ i ]);
return a [ g ];}
int main()
{
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
cin >> n >> g;
for ( int i = 1 ; i <= n ; i++)
cin >> w [ i ] >> p [ i ];
cout << rucsac();}