Cod sursa(job #2868670)

Utilizator czerjak22Czerjak Norbert-Levente czerjak22 Data 11 martie 2022 09:08:46
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.18 kb
#include <iostream>
#include<fstream>

using namespace std;
ifstream in("rucsac.in");
ofstream out ("rucsac.out");
void cpy(int n,int *aktual,int *regi)
{
    for(int i=0;i<=n;i++)
    {

      regi[i]=aktual[i];
    }
}
int main()
{
  //beolvas
  int n,g,suly,penz;
  in>>n>>g;

  int aktualis[g+1]={0},regi[g+1]={0};
  int van[n+1]={0};
  for(int i=1;i<=n;i++)
  {
      in>>suly>>penz;

      if(aktualis[suly]<penz)
      {
          aktualis[suly]=penz;
        van[suly]=1;
      }

      for(int j=1;j<=g;j++)
      {

          if(regi[j]!=0&&penz+regi[j]>regi[suly+j])
          {
              aktualis[suly+j]=penz+regi[j];
              //van[i+j]=1;

          }
      }
          /*cout<<suly<<"::"<<penz<<endl;
          cout<<"r"<<endl;
            for(int i=1;i<=g;i++)
              {
                  cout<<regi[i]<<" ";
              }
              cout<<endl;
              cout<<"a"<<endl;
               for(int i=1;i<=g;i++)
              {
                  cout<<aktualis[i]<<" ";
              }
              cout<<endl;
*/

       cpy(g,aktualis,regi);

  }
out<<aktualis[g];
cout<<aktualis[g];
    return 0;
}