Cod sursa(job #3303576)

Utilizator domdiridomdidomDominik domdiridomdidom Data 16 iulie 2025 13:47:22
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
#include <vector>

struct taska{
   int w, p;
};

int main(){
   std::ifstream bem("rucsac.in");
   std::ofstream kim("rucsac.out");
   int n, g;
   bem >> n >> g;
   std::vector<taska> tomb(n);
   std::vector<int> dp(g + 1, 0);
   for(int i = 0; i < n; i++) bem >> tomb[i].w >> tomb[i].p;
   for(int i = 0; i < n; i++)
      for(int j = g; j >= tomb[i].w; j--)
         dp[j] = ((dp[j] > dp[j - tomb[i].w] + tomb[i].p) ? dp[j] : dp[j - tomb[i].w] + tomb[i].p);
   kim << dp[g] << '\n';
}