Cod sursa(job #1011776)
Utilizator | Matei Staicu smatei16 | Data | 17 octombrie 2013 14:31:13 |
---|---|---|---|
Problema | Problema rucsacului | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,gm,gmax,p,pmax,i,j,a[10000],b[10000],x;
int main()
{f>>n>>gm;
for(i=1;i<=n;i++)f>>a[i]>>b[i];
for(i=1;i<=(1<<n);i++){
x=i;
gmax=0;
p=0;
for(j=1;j<=n;j++)
{if(x%2==1){
p=p+b[j];
gmax=gmax+a[j];
}x/=2;
}
if(p>pmax && gmax<=gm)pmax=p;
}
g<<pmax;
return 0;
}