Pagini recente » Cod sursa (job #2078719) | Cod sursa (job #113051) | Cod sursa (job #2915768) | Cod sursa (job #156099) | Cod sursa (job #1897051)
#include <fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int n,gm,g,i,j,v;
long long maxim;
long long dp[3][20001];
int main()
{
fin>>n>>gm;
for(i=1;i<=n;i++)
{
fin>>g>>v;
for(j=1;j<g;j++)
dp[i%2][j]=dp[1-(i%2)][j];
for(j=g;j<=gm;j++)
dp[i%2][j]=max(dp[1-(i%2)][j-g]+v,dp[1-(i%2)][j]);
}
maxim=0;
for(j=1;j<=gm;j++)
maxim=max(maxim,dp[n%2][j]);
fout<<maxim;
return 0;
}