Cod sursa(job #2493196)
Utilizator | Data | 16 noiembrie 2019 09:35:19 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n, gr;
struct obiect{
int w, p;
}a[5005];
int dp[5005];
int main()
{
f>>n>>gr;
for(int i=1; i<=n; i++)
{
f>>a[i].w>>a[i].p;
for(int j=gr; j>=a[i].w; j--)
dp[j]=max(dp[j], dp[j-a[i].w]+a[i].p);
}
g<<dp[gr];
return 0;
}