Cod sursa(job #160791)

Utilizator FlorinC1996Florin C FlorinC1996 Data 16 martie 2008 21:07:17
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<iostream.h>   
#include<fstream.h>   
#define M 100000000   
#define mm 10002   
long a[mm],b[mm],i,j,g,w,cost[1001],e[1001],min;   
int main()   
{   
 ifstream f("energii.in");   
 ofstream out("energii.out");   
  
 f>>g;   
 f>>w;   
 for(i=1;i<=g;i++)   
  f>>e[i]>>cost[i];   
 f.close();   
  
for(i=1;i<mm;i++)   
   a[i]=b[i]=M;   
  
 for(i=1;i<=g;i++)   
 {   
  for(j=1;j<mm;j++)   
   a[j]=b[j];   
  for(j=0;j<=w;j++)   
   if(b[j+e[i]]>a[j]+cost[i])   
    b[j+e[i]]=a[j]+cost[i];   
 }   
  
 min=b[w];   
 for(i=w;i<mm;i++)   
  if(min>b[i])   
   min=b[i];   
 if(min==M)   
  min=-1;   
 out<<min;   
 out.close();   
 return 0;   
}