Inspirado por ¿Es doble hablar? , Ideé un desafío más difícil. Dada una cadena, determine si la cadena es n-speak , para cualquier .
N-speak se define repitiendo cada letra veces. Con , la cadena Hello
se transforma en HHHHeeeelllllllloooo
. Su objetivo es averiguar si la entrada es una salida válida para cualquier transformación de n-speak.
Cabe señalar que cualquier oración que sea válida n-hablar, para , también es válida k-hablar. Por lo tanto, las partes difíciles de resolver serán valores impares de .
Entrada
Una cadena que consta de al menos 2 caracteres. La entrada también podría ser una lista de caracteres. La entrada es sensible a mayúsculas y minúsculas.
Salida
Truthy
si la cadena es n-speak, de lo falsey
contrario.
Ejemplos
Casos verdaderos
HHeelllloo,, wwoorrlldd!!
TTTrrriiipppllleee ssspppeeeaaakkk
QQQQuuuuaaaaddddrrrruuuupppplllleeee ssssppppeeeeaaaakkkk
7777777-------ssssssspppppppeeeeeeeaaaaaaakkkkkkk
999999999
aaaabb
aaaaaaaabbbbcc
aaaaabbbbb
@@@
Si desea generar casos de verdad adicionales, puede usar este script MathGolf . Coloque la cadena entre comillas y el valor de como entrada.
Casos falsos
Hello, world!
TTTrrriiipppllleee speak
aaaaaaaaaaaaaaaab
Ddoouubbllee ssppeeaakk
aabbab
aaaabbb
a (does not need to be handled)
(empty string, does not need to be handled)
Por supuesto, como se trata de código de golf, ¡prepárate para recortar algunos bytes!
aaaabbb
aabbab