Cod sursa(job #2285485)

Utilizator Alexghita96Ghita Alexandru Alexghita96 Data 18 noiembrie 2018 17:22:10
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <cstdio>
#include <cstring>

#define WMAX 10005

using namespace std;

int n, w;
int dp[WMAX];

int main() {
    freopen("rucsac.in", "r", stdin);
    freopen("rucsac.out", "w", stdout);

    scanf("%d %d", &n, &w);
    memset(dp, 0, sizeof(dp));

    int wi, pi;
    for (int i = 0; i < n; i++) {
        scanf("%d %d", &wi, &pi);

        for (int j = w; j >= wi; j--) {
            if (dp[j] < dp[j - wi] + pi) {
                dp[j] = dp[j - wi] + pi;
            }
        }
    }

    printf("%d", dp[w]);
}