Cod sursa(job #1688738)
Utilizator | Andrei Cotor Andrei_Cotor | Data | 13 aprilie 2016 18:21:10 |
---|---|---|---|
Problema | Energii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include<fstream>
using namespace std;
ifstream fi("energii.in");
ofstream fo("energii.out");
int n,w,i,W[1001],V[1001],A[1001][5001],j;
int main()
{
fi>>n>>w;
for(i=0; i<n; i++)
fi>>W[i]>>V[i];
for(i=0; i<=w; i++)
A[0][i]=0;
for(i=1; i<=n; i++)
{
for(j=0; j<=w; j++)
{
if(W[i-1]>j)
{
A[i][j]=A[i-1][j];
}
else
{
A[i][j]=max(A[i-1][j],A[i-1][j-W[i-1]]+V[i-1]);
}
}
}
fo<<A[n][w]<<"\n";
fi.close();
fo.close();
return 0;
}