Pagini recente » Cod sursa (job #1364540) | Cod sursa (job #1531728) | Cod sursa (job #2973175) | Istoria paginii runda/simulare_de_oni_2 | Cod sursa (job #2396979)
#include <fstream>
#include <iostream>
using namespace std ;
ifstream fin ("rucsac.in");
ofstream fout ("rucsac.out");
int dp[10010];
int g[5010];
int v[5010];
int main(){
int n,G;int i,j;
fin>>n>>G;
for( i=1;i<=n;i++)
fin>>g[i]>>v[i];
for(j=G-g[i];j>=0;j--)
if(dp[j]!=0 || j==0)
dp[j+g[i]]=max(dp[j+g[i]],dp[j]+v[i]);
int tfisthishit=0;
for(i=G;i>=1;i--)
if(dp[i])tfisthishit=max(tfisthishit,dp[i]);
fout<<tfisthishit; return 0;
}