Pagini recente » Cod sursa (job #767322) | Cod sursa (job #2400399) | Cod sursa (job #500503) | Cod sursa (job #1210101) | Cod sursa (job #458134)
Cod sursa(job #458134)
#include<fstream.h>
ifstream f("energii.in");
ofstream gg("energii.out");
int n, w, i, j, wi, wmax, cc;
int c[5010];
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)
gg<<c[w];
else
gg<<-1;
f.close();
gg.close();
return 0;
}