No me sorprendería si fuera completamente al azar. Digamos que tenemos una fila de 8 gemas. ¿Cuál es la probabilidad de que la fila de 8 gemas no tenga dos gemas adyacentes que sean idénticas? Si arreglamos la primera gema, la probabilidad es [matemática] \ izquierda (\ dfrac {6} {7} \ derecha) ^ 7 \ aproximadamente 34 \% [/ matemática]. Ignorando el hecho de que puede haber tuplas adyacentes de gemas a través de las filas, [matemática] (0.34) ^ 8 \ aprox 0.018 \% [/ matemática], que debería ser un límite superior en la probabilidad de que un tablero generado aleatoriamente no tenga movimientos válidos .
Para ser exactos, la probabilidad de que no haya dos gemas adyacentes idénticas no es menor que [matemáticas] \ left (\ dfrac {6} {7} \ right) ^ {14} \ cdot \ left (\ dfrac {5} {7 } \ right) ^ {49} \ aprox 8 \ cdot 10 ^ {- 9} [/ math]. Por supuesto, esto es una subestimación de la probabilidad de que un tablero no tenga un movimiento válido al principio, pero no debería estar apagado por más de un par de órdenes de magnitud, lo que significa que de vez en cuando en un millón de juegos, un azar la configuración no tiene movimiento aleatorio, en cuyo caso simplemente genera otra configuración nuevamente. Tenga en cuenta que generar una configuración aleatoria es extremadamente económico (generar 64 enteros aleatorios). Por lo tanto, no creo que se necesite un algoritmo elegante.
- ¿Qué es la representación de colas usando array?
- Estoy comenzando un proyecto de clasificación de picos, ¿dónde encuentro datos sin procesar y / o simulados?
- Cómo mejorar en algoritmos, estructuras de datos y programación competitiva, solo por puro aprendizaje, así como por ubicaciones en empresas de primer nivel, en un año
- ¿Necesito seguir la ruta de programación competitiva para ser muy bueno en el desarrollo de algoritmos?
- ¿Qué tan efectiva es la tecnología para resolver el problema de la pobreza?