Cod sursa(job #2394090)

Utilizator mihnea.anghelMihnea Anghel mihnea.anghel Data 1 aprilie 2019 12:17:11
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>
#define DIM 6000
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int w[DIM], wcrt[1500000], p[DIM],n,i,j,G,maxi, d[1500000];
int main()
{
    fin>>n>>G;
    for(i=1;i<=n;i++) fin>>w[i]>>p[i];
    d[0]=1; maxi=0;
    for(i=1;i<=n;i++){
        for(j=maxi;j>=0;j--)
            if(d[j]==1 && wcrt[j]+w[i]<=G){
                d[j+p[i]]=1;
                maxi=max(maxi, j+p[i]);
                wcrt[j+p[i]]=wcrt[j]+w[i];
            }
    }
    fout<<maxi;
    return 0;
}