Mai intai trebuie sa te autentifici.
Cod sursa(job #1849699)
| Utilizator | Data | 17 ianuarie 2017 19:36:45 | |
|---|---|---|---|
| Problema | Problema rucsacului | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.52 kb |
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int prof[10005];
struct proiect{
int p,g;
};
proiect v[10005];
int main()
{
int g,i,j,n;
cin>>n>>g;
for(i=1;i<=n;i++)
cin>>v[i].g>>v[i].p;
for(j=1;j<=g;j++)
prof[j]=-1;
prof[0]=0;
for(i=1;i<=n;i++)
for(j=g-v[i].g;j>=0;j--)
if(prof[j]!=-1 && prof[j]+v[i].p>prof[j+v[i].g])
prof[j+v[i].g]=prof[j]+v[i].p;
int max=0;
for(i=1;i<=g;i++)
if(prof[i]>max)
max=prof[i];
cout<<max;
return 0;
}
