Se necesita adivinar un número del 1 al 100. Puedo hacer preguntas y obtener respuestas: "sí" o "no". Por la respuesta "sí" debo pagar un dólar, por la respuesta "no" - dos dólares. ¿Cuántos dólares debo tener para adivinar exactamente mi número?
La decisión obvia es el producto del límite superior de $log_2 100$ en 2 (siempre dividimos nuestro conjunto en dos partes iguales y esperamos el peor caso).
Pero creo que no es un algoritmo óptimo, quizás sea mejor dividir mi conjunto en otra proporción que no sea uno a uno debido a los costos desiguales de las preguntas. Tal vez en una proporción de dos a uno.
Ayuda a encontrar la mejor solución por favor. Gracias de antemano.
0 votos
Sugerencia: intenta resolver las cosas primero para números más pequeños.
0 votos
Intenté hacerlo para un conjunto del 1 al 10 y descubrí que puedo adivinar el número con 5 dólares (en primer lugar dividí mi conjunto en dos conjuntos del 1 al 7 y del 8 al 10, etc.), pero no puedo encontrar regularidad y extender mis pensamientos a un conjunto del 1 al 100.
1 votos
Cuando lo hago para un conjunto del 1 al 10, encuentro que cuesta 6 dólares. Así que a menos que esté entendiendo mal el problema (o haya cometido un error yo misma), algo falla en tu pensamiento. Si editas el problema para mostrar cómo abordas el caso más pequeño, tendremos una mejor idea de cómo ayudarte.
0 votos
"¿Cuántos dólares debería tener para adivinar mi número exactamente?" No está claro si quieres encontrar una estrategia que optimice el costo en el peor de los casos, o más bien en promedio.
0 votos
"Barry Cipra", he recapitulado y encontrado que necesito 6 dólares. Pero no es posible que la decisión sea tan obvia, se considera como una tarea no muy simple.
0 votos
"leonbloy", necesito pensar en el peor caso