Cod sursa(job #2135787)

Utilizator asdfghjkl1ema mihaela asdfghjkl1 Data 19 februarie 2018 11:06:17
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <fstream>
using namespace std;

int n, g, dp[2][10005], w[10005], p[10005], u;

int main(){
    ifstream cin ("rucsac.in");
    ofstream cout ("rucsac.out");
    cin >> n >> g;
    for (int i=1; i<=n; i++) cin >> w[i] >> p[i];
    for (int i=1; i<=n; i++, u=1-u){
        for (int j=0; j<=g; j++){
            dp[u][j] = dp[1-u][j];
            if (j >= w[i]) dp[u][j] = max(dp[u][j], dp[1-u][j-w[i]] + p[i]);
        }
    }
    cout << dp[1-u][g];
    return 0;
}