Cod sursa(job #213593)

Utilizator madmanjonesJones the one madmanjones Data 10 octombrie 2008 16:05:32
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>
using namespace std;
int G, W, E[1000], C[1000];
int cost[15001];
int main(){
  int i,mini,j;
  ifstream f("energii.in");
  f>>G>>W;
  for(i=0;i<G;i++)
    f>>E[i]>>C[i];
  f.close();
  for(i=1;i<15001;i++)
    cost[i]=2000000000;
  mini=2000000000;
  for(i=0;i<G;i++)
    for(j=15000;j>=E[i];j--){
        cost[j]=min(cost[j-E[i]]+C[i],cost[j]);
        if(j>=W)
          mini=min(cost[j],mini);
     }
  ofstream g("energii.out");
  if(mini==2000000000)  g<<"-1\n";
  else g<<mini<<'\n';
  g.close();
  return 0;
}