Pagini recente » Cod sursa (job #2989654) | Cod sursa (job #460667) | Cod sursa (job #1879404) | Cod sursa (job #1033904) | Cod sursa (job #807255)
Cod sursa(job #807255)
#include<fstream>
#include<iostream>
#define maxn 5001
#define maxg 10001
using namespace std;
int P[maxn],H[maxn],O[maxg];
int main()
{
fstream f,g;
f.open("rucsac.in",ios::in);
g.open("rucsac.out",ios::out);
int N,G,sol=0;
f>>N>>G;
O[0]=0;
for(int i=1;i<=N;i++)
f>>H[i]>>P[i];
for(int i=1;i<=N;i++)
for(int j=G-H[i];j>=0;j--)
{ if(O[j+H[i]] < O[j]+P[i])
{ O[j+H[i]]=O[j]+P[i];
if(O[j+H[i]]>sol)
sol=O[j+H[i]];
}
}
g<<sol;
f.close();
g.close();
}