Cod sursa(job #2417451)

Utilizator baragan30Baragan Andrei baragan30 Data 29 aprilie 2019 20:56:15
Problema Energii Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
const int mr=10000;
int G,W,d[mr+6];
void afiseaza(){
for (int i=1;i<=30;i++){
    cout<<d[i]<<" ";
}cout<<endl;
}
void dinamica ()
{
    int w,cost;
    for(int i=1;i<=G;i++)
    {
      f>>w>>cost;
      for(int j=mr-w+1;j>=1;j--){
        if( ( (cost + d[j] <d[j + w] )||d[j + w]==0 )&&d[j]!=0)d[j + w]=d[j]+cost;
      }
      if( (cost  <d[w] )||d[w]==0 )d[w]=cost;
    }
}
void citire(){
f>>G >>W ;
}

int main()
{ citire();
dinamica();
int mi=-1;
for(int i=W;i<=mr;i++){
        if(d[i]!=0){
                if(mi==-1)mi=d[i];
        else mi=min(mi,d[i]);
    }
}
g<<mi;

    return 0;
}