Cod sursa(job #2046040)

Utilizator GramaDavidGrama David Sebastian GramaDavid Data 23 octombrie 2017 12:19:57
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream reed("rucsac.in");
ofstream shaw("rucsac.out");

int w[5001],p[5001];
int cmax[10001];

int main()
{
    int n,g;
    reed>>n>>g;
    for(int i=1;i<=n;i=i+1){
        reed>>w[i]>>p[i];
    }
    cmax[0]=0;
    int sol=0;
    for(int i=1;i<=n;i=i+1){
        for(int j=g-w[i];j>=0;j=j-1){
            if(cmax[j+w[i]]<cmax[j]+p[i]){
                cmax[j+w[i]]=cmax[j]+p[i];
                if(cmax[j+w[i]]>sol){
                    sol=cmax[j+w[i]];
                }
            }
        }
    }
    shaw<<sol;
    return 0;
}