Cod sursa(job #2478388)
Utilizator | Data | 21 octombrie 2019 23:20:17 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
int n,g,w[5100],p[5100],d[10100],Max;
int main()
{
in>>n>>g;
for(int i=1;i<=n;i++) in>>w[i]>>p[i];
for(int i=1;i<=n;i++)
{
for(int j=g;j>=0&&j-w[i]>=0;j--)
{
d[j]=max(d[j],d[j-w[i]]+p[i]);
Max=max(d[j],Max);
}
}
out<<Max;
return 0;
}