Comenzando con la cadena ABC, considere el resultado de agregar repetidamente la última mitad de sí mismo (usando la mitad más grande si la longitud es impar).
Obtenemos la progresión:
ABC
ABCBC
ABCBCCBC
ABCBCCBCCCBC
ABCBCCBCCCBCBCCCBC
etc...
Supongamos que Srepresenta la secuencia (o secuencia) infinita resultante que se produce cuando este procedimiento se repite para siempre.
Gol
El objetivo en este desafío de código es encontrar el índice de la primera aparición de corridas de C's en S.
Al principio es fácil: Cprimero ocurre en el índice 2, CCen 4, CCCen 7, CCCCen 26, ¡pero CCCCCestá en el índice 27308! Después de eso se me acaba la memoria.
El ganador será el envío que genere correctamente la mayoría de los índices de ejecución (en orden, comenzando en C). Puede usar cualquier tipo de algoritmo, pero asegúrese de explicarlo si no está usando la fuerza bruta básica. La entrada y la salida pueden estar en cualquier formato fácil de entender.
Nota importante: No sé oficialmente si Scontiene o no todas las ejecuciones de C's. Esta pregunta se deriva de esta en el Mathematics Stack Exchange , en el que el autor tampoco ha encontrado CCCCCC. Tengo curiosidad si alguien aquí puede. (Esa pregunta a su vez se basa en mi pregunta original sobre el tema ).
Si puede demostrar que no se Cproducen todas las corridas S, ganará automáticamente ya que esta pregunta ya no será válida. Si nadie puede probar eso ni encontrarlo, CCCCCCentonces el ganador será la persona que pueda obtener el límite inferior más alto en el índice de CCCCCC(o cualquiera que sea la carrera sin resolver más grande si CCCCCCse encuentra).
Actualización: Felicitaciones a isaacg y res que han encontrado CCCCCCen el índice astronómico de 2.124 * 10 ^ 519. A este ritmo, no puedo imaginar encontrar CCCCCCCcon ningún método que se base en la fuerza bruta. Buen trabajo chicos!
CCCCCen el índice 27308, pero luego parece que no sabes dónde ocurre por primera vez. Quiso decirCCCCCC?