Cod sursa(job #2590923)
Utilizator | Alex Boldas alexboldas | Data | 29 martie 2020 12:38:03 |
---|---|---|---|
Problema | Problema rucsacului | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
#include<fstream>
#include<iostream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
unsigned short n,gr,i,x[5005][10001],j;
short v[5005],g[5005];
int main(){
fin>>n>>gr;
for(i=1;i<=n;i++)
fin>>g[i]>>v[i];
for(i=1;i<=n;i++)
for(j=1;j<=gr;j++)
if(g[i]<=j&&x[i-1][j-g[i]]+v[i]>x[i-1][j])
x[i][j]=x[i-1][j-g[i]]+v[i];
else
x[i][j]=x[i-1][j];
fout<<x[n][gr];
cout<<(sizeof(v)+sizeof(g)+sizeof(x))/1024.0/1024/8;
return 0;
}