1. Autor : Juan Enrique Marcos Chávez
Problema de los esposos celosos: En este caso presentamos para 3 parejas es decir 3 esposos (A,
B, C) con sus respectivas esposas (a, b, c) que llegan a la orilla de un rio ( _ ) que quieren cruzar hay
un bote ( N ) que tiene capacidad para 2 personas, el problema seríasencillo si no fuera porque los
esposos son tan celosos que no permiten que sus esposas estén en compañía de otro hombre sin
que estén ellos presentes como se resolvería esto?
3. Autor : Juan Enrique Marcos Chávez
Generamos los vértices adyacentes de cada vértice del extremo izquierdo con los del extremo
derecho para construir la matriz A:
4. Autor : Juan Enrique Marcos Chávez
Consideremos una matriz A que es la matriz de adyacencias de los 17 vértices del lado izquierdo
con los 17 vértices del lado derecho (desde el vértice 18 al 34), entonces la matriz de adyacencia
de los 17 vértices del lado derecho con los 17 vértices del lado izquierdo será la transpuesta de A
es decir A’ y los demás son ceros dado que no hay adyacencia de un vértice de un lado con
vértices de su mismo lado
Entonces la matriz de adyacenciasestá dado por:
Donde :
Entonces :
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
2 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0
3 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0
4 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0
6 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0
7 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0
8 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0
9 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0
11 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0
12 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
16 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1
17 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
5. Autor : Juan Enrique Marcos Chávez
Usando matlab construimos la matriz y hallamos el mínimo de viajes para que las 3 parejas crucen
el rio:
A=[1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0;
1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0;
0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0;
0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0;
0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0;
0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0;
0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0;
0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0;
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1;
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1;
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1]
a=[zeros(17),A;A',zeros(17)];
i=1;
k=a(1,34);
while k==0
i=i+1;
Gs=a^i;
k=Gs(1,34);
end
fprintf('El numerominimo de viajes para trasladar las 3 parejas es
%dn',i);
fprintf('El numero de formas de como pueden viajar las 3 parejas es de
%dn',k);
la solución que nos da es :
El número mínimo de viajes para trasladar las 3 parejas es 11
El número de formas de cómo pueden viajar las 3 parejas es de 486