Pagini recente » Cod sursa (job #2538024) | Cod sursa (job #809880) | Cod sursa (job #2775999) | Cod sursa (job #918955) | Cod sursa (job #447563)
Cod sursa(job #447563)
#include<fstream.h>
ifstream f("energii.in");
ofstream h("energii.out");
int n, w, c[5010], i, j, wi, wmax, cc;
struct generator { int e, c;} g[1010];
const int INF=5010*1010;
int main(){
f>>n>>w;
wmax=0;
for(i=1;i<=n;i++)
f>>g[i].e>>g[i].c;
for(i=1;i<=w;i++)
c[i]=INF;
c[0]=0;
for(i=1;i<=n;i++){
for(j=wmax;j>=0;j--)
if(c[j]!=INF){
wi=j+g[i].e;
cc=c[j]+g[i].c;
if(wi>w) wi=w;
if(c[wi]>cc)
c[wi]=cc;
if(wi>wmax)
wmax=wi;
}
}
if(c[w]!=INF)
h<<c[w];
else
h<<-1;
f.close();
h.close();
return 0;
}