Pagini recente » Cod sursa (job #1528352) | Cod sursa (job #1556821) | Cod sursa (job #227529) | Cod sursa (job #1475136) | Cod sursa (job #2214444)
#include <iostream>
#include <fstream>
int n,m,v[5010],w[5010],d[10010],sol;
using namespace std;
int main () {
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
fin>>n>>m;
for(int i=1;i<=n;i++)
fin>>w[i]>>v[i];
for(int i=1;i<=n;i++){
for(int j=m-w[i];j>-1;j--)
if( d[j+w[i]] < d[j] + v[i] ){
d[j+w[i]] = d[j] + v[i];
if( d[j+w[i]] > sol)
sol = d[j+w[i]];
}
// for(int j=1;j<=m;j++)
// cout<<d[j]<<" ";
// cout<<endl;
}
fout<<sol;
return 0;
}