Cod sursa(job #1518960)
Utilizator | Data | 6 noiembrie 2015 16:42:09 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 35 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include<fstream>
using namespace std;
int n,maxG,dp[5001][10001],G,P;
int main()
{
ifstream f("rucsac.in");
ofstream g("rucsac.out");
f>>n>>maxG;
for(int i=1;i<=n;i++){
f>>G>>P;
for(int k=1;k<=maxG;k++)
{
dp[i][k]=dp[i-1][k];
if(G<=k)
dp[i][k]=max(dp[i][k],dp[i-1][k-G]+P);
}
}
g<<dp[n][maxG];
return 0;
}