Pagini recente » Cod sursa (job #2459401) | Cod sursa (job #2268885) | Cod sursa (job #1957682) | Cod sursa (job #899852) | Cod sursa (job #894527)
Cod sursa(job #894527)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int n,w,e[1001],c[1001],bst[10001];
void citire()
{
int i;
f>>n>>w;
for(i=1;i<=n;i++)
f>>e[i]>>c[i];
}
int main()
{
int i,j,rasp=10001;
citire();
for(i=1;i<=n;i++)
{
for(j=w;j>0;j--)
{
if(bst[j])
{
bst[j+e[i]]=bst[j]+c[i];
if(j+e[i]>=w &&rasp>bst[j+e[i]])
rasp=bst[j+e[i]];
}
}
if(bst[e[i]]>c[i])
bst[e[i]]=c[i];
else
if(bst[e[i]]==0)
bst[e[i]]=c[i];
if(e[i]>=w &&rasp>bst[e[i]])
rasp=bst[j+e[i]];
}
if(rasp==10001)
g<<-1;
else
g<<rasp;
return 0;
}