Pagini recente » Cod sursa (job #2692225) | Cod sursa (job #2794730) | Cod sursa (job #935536) | Cod sursa (job #825675) | Cod sursa (job #887575)
Cod sursa(job #887575)
#include<fstream>
#include<vector>
#include<algorithm>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int n,G,i,j,sol;
vector<int> L1(10005),L2(10005);
vector<pair<int,int> > a(10005);
int main()
{
in>>n>>G;
for (i=1;i<=n;i++)
in>>a[i].first>>a[i].second;;
L1[a[1].first]=a[1].second;
for (i=2;i<=n;i++)
{
for (j=1;j<=G;j++)
{
L2[j]=L1[j];
if (j-a[i].first>0) L2[j]=max(L2[j],L1[j-a[i].first]+a[i].second);
}
L1=L2;
}
for (i=1;i<=G;i++) sol=max(sol,L1[i]);
out<<sol;
}