Cod sursa(job #1664007)

Utilizator andreinmAndrei andreinm Data 26 martie 2016 11:42:22
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <bits/stdc++.h>
using namespace std;

int dp[10010];
int n, g, w, p, ans, i;

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

    scanf("%d %d", &n, &g);
    for ( ; n ; --n){
        scanf("%d %d", &w, &p);

        for (i = g - w; i >= 0; --i)
            dp[i+w] = max(dp[i+w], dp[i] + p);
    }
    for (i = 0; i <= g; ++i)
        ans = max(ans, dp[i]);
    printf("%d\n", ans);

    return 0;
}