Pagini recente » Borderou de evaluare (job #2643996) | Cod sursa (job #2877809) | Cod sursa (job #720333) | Borderou de evaluare (job #1342118) | Cod sursa (job #1985291)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int a[10001];
int main() {
int n,m,g,p,i,j;
fin>>n>>m;
for(i=1;i<=n;i++) {
fin>>g>>p;
for(j=m-g;j>0;j--)
if(a[j]!=0 && a[j+g]<a[j]+p)
a[j+g]=a[j]+p;
if(a[g]<p)
a[g]=p;
}
p=0;
for(i=1;i<=m;i++)
if(a[i]>p)
p=a[i];
fout<<p;
return 0;
}