Cod sursa(job #2348716)

Utilizator eusebiu_alexandruMorar Eusebiu eusebiu_alexandru Data 19 februarie 2019 21:55:37
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include<fstream>
using namespace std;
ifstream f ("energii.in");
ofstream g ("energii.out");
struct ele
{
    int gr,val;
}v[10001];
int n,s,i,j,maxim,valoare;
int c[1002][90002];//a[1002][10002];
int main()
{
    f>>n>>valoare;

    for(i=1;i<=n;i++)
        f>>v[i].val>>v[i].gr,maxim+=v[i].gr;
 for(i=1;i<=n;i++)
     for(j=1;j<=maxim;j++)
  {
     if(j>=v[i].gr && c[i-1][j-v[i].gr]+v[i].val>c[i-1][j])
     {
        c[i][j]=c[i-1][j-v[i].gr]+v[i].val;
     }
     else
        c[i][j]=c[i-1][j];

  }
 int rezultat=-1;
 for(j=1;j<=maxim;j++)
       if(c[n][j]==valoare)
       {
            g<<j;
            return 0;
       }
   g<<rezultat;
}