Cod sursa(job #2750596)

Utilizator mihnea03Ciocioiu Mihnea mihnea03 Data 12 mai 2021 10:20:41
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>
#include <climits>
using namespace std;
int sol[1010];
int g[1010];
int v[1010];
int i,j,n,G,Max;

int main() {
    ifstream fin("rucsac.in");
    ofstream fout("rucsac.out");
    fin>>n>>G;
    for (i=1;i<=n;i++) {
        fin>>g[i]>>v[i];
    }
    for (i=1;i<=G;i++) {
        sol[i]=-1;
    }
    for (i=1;i<=n;i++) {
        for (j=G;j>=0;j--) {
            if (sol[j]!=-1) {
                if (j+g[i]<=G) {
                    sol[j+g[i]]=sol[j]+v[i];
                }
            }
        }
    }
    Max=INT_MIN;
    for (i=1;i<=G;i++) {
        Max=max(Max,sol[i]);
    }
    fout<<Max;
    return 0;
}