Pagini recente » Cod sursa (job #3267908) | Cod sursa (job #2288797) | Cod sursa (job #3274072) | Cod sursa (job #2629417) | Cod sursa (job #1474002)
// (・⊝・)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int e[2000],c[2000];
int g[1000000];
int n;
int main()
{ int i,j,w,s=0;
in>>n;
in>>w;
for(i=1;i<=n;i++)
{in>>e[i]>>c[i];
s=s+e[i];}
if(s<w)out<<-1;
else
{for(i=1;i<=n;i++)
for(j=s;j>=w-e[i];j--)
g[j+e[i]]=max(g[j+e[i]], g[j]+c[i]);
for(i=w;i<=s;i++)
if(g[i]>0){
out<<g[i];
break;
}}
return 0;
}