Cod sursa(job #2477079)

Utilizator CharacterMeCharacter Me CharacterMe Data 19 octombrie 2019 17:04:05
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <bits/stdc++.h>
#define w first
#define p second
typedef long long ll;
ll n, g, i, j, k;
ll sol[10001];
int main()
{
    freopen("rucsac.in", "r", stdin);
    freopen("rucsac.out", "w", stdout);
    scanf("%lld%lld", &n, &g);
    for(i=1; i<=n; ++i) {
        ll w, p;
        scanf("%lld%lld", &w, &p);
        for(j=g; j>=1; --j){
            if(j>=w) sol[j]=std::max(sol[j], sol[j-w]+p);
        }
    }
    printf("%lld", sol[g]);
    fclose(stdin);
    fclose(stdout);
    return 0;
}