jueves, 18 de diciembre de 2008

Problema de las cuatro monedas

Este es un problema que me resultó muy interesante resolverlo. En este desafío hay cuatro monedas dispuestas de manera que forman un cuadrado (supongamos sobre un plato), las monedas pueden estar en cara o cruz. El objetivo es garantizar que en al algún momento del proceso, que a continuación se describe, las monedas estén, o bien todas en cara, o bien todas en cruz.

En el proceso la configuración inicial de las cuatro monedas es aleatoria y desconocida. Otra restricción es que a lo largo del proceso no se puede ver en que estado están las monedas excepto cuando se aplica una operación.
Una operación consiste en elegir dos monedas, verlas, y cambiarle el estado (o no). Recordar que se desconoce el estado de las otras dos monedas.

Hasta aquí el problema parece fácil, una la solución sería, elejir dos monedas, ponerlas en cara, elegir las otras dos y ponerlas en cara. Pero falta el condimento que le da dificultad al problema.
Después de cada operación, el plato que contiene el cuadrado de monedas gira alrededor centro cantidad aleatoria de vueltas.

Ahora sí descripto el problema ... ¿Cómo garantizamos que en algún momento las monedas estén todas en cara o todas en cruz?

Si queremos aplicar la solución anterior: elejimos dos monedas, las ponemos en cara, el plato gira aleatoriamente y nada nos garantiza que se elijan las otras dos monedas.

¿Se entiende? ¿Lo pensaste? ¿se te ocurrió alguna solución?

No hay comentarios: