Cod sursa(job #3002650)

Utilizator theninjaguy5Gheorghiu Mihail-Andrei theninjaguy5 Data 14 martie 2023 22:44:22
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.79 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("rucsac.in");
ofstream z("rucsac.out");
int main()
{int n,g,s,maxim;
f>>n;
f>>g;
int a[n+1][2];
int d[n][g];
for(int i=1;i<=n;i++){
    f>>a[i][0];
    f>>a[i][1];
}

for(int i=0;i<=n;i++)
    for(int j=0;j<=g;j++){
        d[0][j]=0;
        if(j>=a[i][0]){
            d[i][j]=a[i][1];
            if(a[i][1]+d[i-1][j-a[i][0]]>d[i-1][j])//compara val de la elem act si celelate elemente(maxima(in fct de greutate(adica cat poate sa mai bage in rucsac in functie de elem la care esti)) cu cel de deasupra lui
                d[i][j]=a[i][1]+d[i-1][j-a[i][0]];
            else
                d[i][j]=d[i-1][j];

        }
        else
            d[i][j]=d[i-1][j];
}



maxim=d[n][g];
z<<maxim;

    return 0;
}