Pagini recente » Cod sursa (job #488295) | Cod sursa (job #391268) | Cod sursa (job #405995) | Cod sursa (job #714766) | Cod sursa (job #1670094)
#include <bits/stdc++.h>
using namespace std;
#define gmax 10005
#define nmax 5003
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int a[nmax],b[nmax];
int s[2][gmax];
int main()
{
int n,m;
f>>n>>m;
for(int i=1;i<=n;i++)
f>>a[i]>>b[i];
int l=0;
for(int i=1;i<=n;i++, l=1-l)
{
for(int j=0;j<=m;j++){
s[1-l][j]=s[l][j];
if(a[i]<=j)
{
s[1-l][j]=max(s[1-l][j],s[l][j-a[i]]+b[i]);
}
}
}
g<<s[l][m];
return 0;
}