La respuesta es de 29 minutos.
Se me ocurren algunos paradigmas de resolución de problemas que se pueden usar para resolver genéricamente (o, en general). Pero iré con la teoría de grafos para esta respuesta.
Supongamos que los dos lados del puente son X e Y. Supongamos también que | yo | representan el tiempo que le toma a la persona i cruzar el puente donde se extrae del conjunto {A, B, C, D, E, F} . En cualquier instante de tiempo discreto cuando la antorcha está en un lado del puente, podemos representar el estado del sistema con dos conjuntos, cada uno con personas presentes a cada lado del puente. Cada posible estado del sistema es un nodo en nuestro gráfico ponderado donde los bordes son el tiempo requerido para que los transeúntes crucen el puente con la linterna a través de los nodos.
Nuestro estado inicial es {A, B, C, D, E, F} {}, es decir, todos en el lado X y nadie en el lado Y. Desde aquí podemos pasar a los siguientes estados:
- Si elige una respuesta a esta pregunta al azar, ¿cuál es la probabilidad de que esté en lo correcto? (A) 25% (B) 50% (C) 60% (D) 25%
- Alice y Bob ponen 100 monedas en una línea sobre una mesa (las monedas pueden tener valores diferentes). Alice toma una moneda de cada extremo de la línea, luego Bob, y así sucesivamente, hasta que terminan con 50 monedas cada una. ¿Qué estrategia puede usar Alice como la primera jugadora en terminar siempre con al menos tanto dinero como Bob?
- El cuadro de mando de la India se lee después de 0.2 sobres como 12/0 (Sachin: 6 y Sehwag: 6). ¿Como es posible?
- Si 1 = 11, 2 = 22, 3 = 33, 4 = 44, 5 = 55, 6 = 66, 7 = 77, entonces 11 =?
- ¿Cuál es la respuesta al enigma de la sopa de albatros?
{C, D, E, F} {A, B} por {A, B} cruzando el puente a un costo máximo de {| A |, | B |} = 2
o
{A, B, C, D} {E, F} por {E, F} cruzando el puente a un costo máximo de {| E |, | F |} = 10
o
una de las transiciones válidas 6C2 + 6C1 de la forma anterior.
Nuestro gráfico tendrá 64 nodos (un ejercicio en sí mismo, dejado para el lector). Completemos este gráfico. Comience con el nodo inicial y agregue bordes ponderados, donde los pesos son el costo de llegar al nodo objetivo a todos los nodos accesibles desde aquí. Ahora, desde cada nodo accesible v, recurse y agregue bordes a todos los nodos accesibles desde v , hasta que se quede sin nodos accesibles.
Hablando programáticamente:
Inicialice un gráfico g con los 64 nodos posibles
Inicializar una cola q
q.enqueue ({A, B, C, D, E, F} {})
hasta q.empty ()
srcNode = q.dequeue ()
para destNode en todos los nodos accesibles desde srcNode
addDirectedEdge ( g , srcNode , destNode , cost )
q .enqueue ( destNode )
Una vez que haya terminado de llenar el gráfico, la respuesta será la ruta más corta desde el nodo {A, B, C, D, E, F} {} al nodo {} {A, B, C, D, E, F} en este gráfico Puede utilizar el algoritmo de ruta más corta de Dijkstra para encontrarlo.
Aquí está el camino que descubrí:
{A, B, C, D, E, F} {} a {C, D, E, F} {A, B} a un costo de 2
{C, D, E, F} {A, B} a {A, C, D, E, F} {B} al costo 1
{A, C, D, E, F} {B} a {A, C, D} {B, E, F} a un costo de 10
{A, C, D} {B, E, F} a {A, B, C, D} {E, F} a un costo de 2
{A, B, C, D} {E, F} a {C, D} {A, B, E, F} a un costo de 2
{C, D} {A, B, E, F} a {A, C, D} {B, E, F} al costo 1
{A, C, D} {B, E, F} a {A} {B, C, D, E, F} a un costo de 7
{A} {B, C, D, E, F} a {A, B} {C, D, E, F} a un costo de 2
{A, B} {C, D, E, F} a {} {A, B, C, D, E, F} a un costo de 2
Costo total = 2 + 1 + 10 + 2 + 2 + 1 + 7 + 2 + 2 = 29