Pagini recente » Monitorul de evaluare | Cod sursa (job #2065671) | Cod sursa (job #347598) | Cod sursa (job #1606099) | Cod sursa (job #3031528)
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int main()
{
int n,i,j,G[10001]={0},nrob,max1,gmax,g,p;
cin>>n>>gmax;
for(i=1;i<=n;i++)
{
cin>>g>>p;
for(j=gmax-g;j>=1;j--)
{
if(G[j]!=0)
{
if(G[j+g]<G[j]+p)
G[j+g]=G[j]+p;
}
}
if(G[g]<p)
G[g]=p;
}
max1=0;
for(i=1;i<=gmax;i++)
{
if(G[i]>max1)
max1=G[i];
}
cout<<max1;
return 0;
}