Tenemos unos objetos que queremos guardar en una mochila. El problema es que la mochila solo puede llevar un peso máximo y si guardasemos todos los objetos sobrepasariamos el peso máximo que puede aguantar la mochila. Escogemos los objetos segun su peso, buscando llevar siempre el máximo posible en la mochila. Los objetos tienen que entrar enteros dentro de la mochila, no se pueden partir, por lo que o entran enteros o no entran.
este es el problema comun pero en el codigo solo se pide la cantidad de elementos y no el peso para saber de cuantas formas se puede gaurdar en la mochila
include
using namespace std;
# define MAX 20
void escojer(int k ,int n ,bool[]);
void imprimir(int n ,bool[]);
main()
{
int i,n;
bool desicion [MAX];
cout<<"numero de elemnetos"; cin>>n;
for(i=0;i
desicion[i]=false;
escojer(0,n,desicion);
}
}
void imprimir(int n ,bool desicion [])
{
for(int i=0;i
cout<
}
cout<
}
void escojer(int k ,int n ,bool desicion [])
{
if(k
desicion[k]=false;
escojer(k+1,n,desicion);
desicion[k]=true;
escojer(k+1,n,desicion);
desicion[k]=false;
}
else
{
imprimir(n,desicion);
}
}
by cesar avila
0 comentarios:
Publicar un comentario