Cod sursa(job #1775533)

Utilizator AndreiTudorSpiruAndrei Spiru AndreiTudorSpiru Data 10 octombrie 2016 15:47:48
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>

using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int d[3][100001],n,gg,w[5010],p[5010];
void sw()
{int i;
    for(i=0;i<=gg;i++)
    d[1][i]=d[2][i];
}
void afis ()
{int i;
    for(i=1;i<=gg;i++)
  g<<d[2][i]<<" ";
g<<'\n';
}
int main()
{int i,j;
    f>>n>>gg;
    for(i=1;i<=n;i++)
    {f>>w[i]>>p[i];
    }
    for(i=1;i<=n;i++)
    {for(j=0;j<=gg;j++)
      {if(w[i]<=j)d[2][j]=max(d[1][j],d[1][j-w[i]]+p[i]);
      else d[2][j]=d[1][j];
      }

    sw();
    }
    g<<d[2][gg];
    return 0;
}