Cod sursa(job #2600640)

Utilizator victorzarzuZarzu Victor victorzarzu Data 12 aprilie 2020 23:49:26
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <bits/stdc++.h>
#define oo 0x3f3f3f3f
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int G, W;
int e[1005], c[1005];
int dp[5005];
int minim = oo;

void Read()
{
  f>>G>>W;
  for(int i = 1;i <= G;++i)
    f>>e[i]>>c[i];
  memset(dp, oo, sizeof(dp));
  dp[0] = 0;
  for(int i = 1;i <= G;++i)
    for(int j = e[i];j <= 5001;j++)
      if(dp[j] > dp[j - e[i]] + c[i])
        {
          dp[j] = dp[j - e[i]] + c[i];
          if(j >= W)  
            minim = min(minim, dp[j]);
        }
  g<<minim;
}

int main()
{
  Read();
  return 0;
}