Cod sursa(job #2774530)
Utilizator | Data | 11 septembrie 2021 20:22:11 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | c-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include<stdio.h>
int g[5001],c[5001],s[10001],m,n,i,j,t;
int main()
{
freopen("rucsac.in","r",stdin),freopen("rucsac.out","w",stdout),scanf("%d%d",&n,&m);
for(i=1;i<=n;++i)
scanf("%d%d",g+i,c+i);
for(i=1;i<=n;++i)
for(j=m-g[i];j>=0;--j)
if(s[j+g[i]]<s[j]+c[i])
s[j+g[i]]=s[j]+c[i],t=s[j+g[i]]>t?s[j+g[i]]:t;
printf("%d",t);
return 0;
}