Cod sursa(job #2276601)

Utilizator SemetgTemes George Semetg Data 4 noiembrie 2018 22:07:13
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
#include <iostream>
#include <cstdio>
using namespace std;

ifstream in { "rucsac.in" };
ofstream out { "rucsac.out" };

#define G_MAX 10005

int G;
int rucsac[G_MAX];

void dp(int g, int c) {
    for (int i { G }; i >= g; --i)
        if (rucsac[i - g] + c > rucsac[i])
            rucsac[i] = rucsac[i - g] + c;
}

int main() {
    int n;
    in >> n >> G;
    
    while (n--) {
        int g, c;
        in >> g >> c;
        dp(g, c);
    }
    
    out << rucsac[G];
}