Cod sursa(job #2935914)

Utilizator RolandPetreanPetrean Roland RolandPetrean Data 7 noiembrie 2022 17:53:09
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.41 kb
// https://infoarena.ro/problema/rucsac
#include <bits/stdc++.h>
using namespace std;

ifstream fin("rucsac.in");
ofstream fout("rucsac.out");

int main() {
  int n, g;
  fin>>n>>g;

  vector<int> w(n+1), p(n+1);
  for (int i=1; i<=n; ++i) fin>>w[i]>>p[i];

  vector<int> dp(g+1);
  for (int i=1; i<=n; ++i) {
    for (int j=g; j>0; --j) {
      if (j>=w[i]) dp[j] = max(dp[j], p[i]+dp[j-w[i]]);
    }
  }

  fout<<dp[g];
}