Pagini recente » Cod sursa (job #1449023) | Cod sursa (job #1931779) | Cod sursa (job #1339071) | Cod sursa (job #2850997) | Cod sursa (job #2205790)
#include <fstream>
using namespace std;
ifstream in ("energii.in");
ofstream out ("energii.out");
int d[5010];
int main()
{
int n,w,j,i,e,c;
in>>n>>w;
for(i=1;i<=n;i++)
{
in>>e>>c;
for(j=w-1;j>=1;j--)
{
if(d[j])
{
if(j+e<=w)
{
if(d[j+e])
d[j+e]=min(d[j+e],d[j]+c);
else
d[j+e]=d[j]+c;
}
else
{
if(d[w+2])
d[w+2]=min(d[w+2],d[j]+c);
else
d[w+2]=d[j]+c;
}
}
}
if(d[e])
d[e]=min(d[e],c);
else
d[e]=c;
}
int mn=999999999;
for(j=w+2;j>=w;j--)
{
if(d[e] && d[e]<mn)
mn=d[e];
}
out<<mn;
return 0;
}