Cod sursa(job #1128683)
Utilizator | Data | 27 februarie 2014 18:11:56 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <fstream>
using namespace std;
int gr[50001],p[50001], cost[10001];
int main()
{
ifstream mama("rucsac.in");
ofstream tata("rucsac.out");
int n,g,i,j;
mama>>n>>g;
for(i=1;i<=n;i++)
mama>>gr[i]>>p[i];
for(i=1;i<=n;i++)
for(j= g- gr[i]; j>=0;j--)
if(cost[j+gr[i]] < cost[j]+ p[i]) cost[j+gr[i]]=cost[j]+ p[i];
tata<<cost[g];
return 0;
}