Cod sursa(job #2772980)

Utilizator MogoneaMIhneaMogonea Mihnea Mihai MogoneaMIhnea Data 3 septembrie 2021 20:26:22
Problema Problema rucsacului Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include<fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int v[1001], h[1001], f[1001];
int n, s, i, j, G, maxi;
int main () {
    fin>>n>>G;
    for(i=1;i<=n;i++)
        fin>>v[i]>>h[i];
        for(i=1;i<=n;i++){
            for(j=G;j>=1;j--){
                if(f[j]!=0){
                    if(j+v[i]<=G && f[j]+h[i]>f[j+v[i]])
                        f[j+v[i]]=f[j]+h[i];
                }
            }
            if(v[i]<=G && h[i]>f[v[i]])
                f[v[i]]=h[i];
        }
        for(i=1;i<=G;i++){
            s=max(s, f[i]);
        }
        fout<<s;
}