Pagini recente » Cod sursa (job #1028627) | Cod sursa (job #143196) | Cod sursa (job #353218) | Cod sursa (job #2655568) | Cod sursa (job #424090)
Cod sursa(job #424090)
#include<stdio.h>
#include<algorithm>
using namespace std;
int n,a[110000],g,w,minim=999999;
void rez(int e, int c)
{
int i;
for(i=w; i>=0; --i)
{
if(a[i])
{
if(!a[i+e])
a[i+e]=c+a[i];
else
a[i+e]=min(a[i+e],a[i]+c);
if(i+e>=w)
minim=min(minim,a[i+e]);
}
if(i==0)
{
if(a[e]==0)
a[e]=c;
else
a[e]=min(a[e],c);
if(i+e>=w)
minim=min(minim,a[e]);
}
}
}
void afis()
{
printf("%d",minim);
}
void cit()
{
scanf("%d %d",&g, &w);
int i,e,c;
for(i=1; i<=g; i++)
{
scanf("%d %d",&e,&c);
rez(e,c);
}
}
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
cit();
afis();
return 0;
}