Inspirado por É falar duas vezes? , Eu projetei um desafio mais difícil. Dada uma sequência, determine se a sequência é n-speak , para qualquer .
N-speak é definido repetindo cada letra vezes. Com , a sequência é transformada em . Seu objetivo é descobrir se a entrada é uma saída válida para qualquer transformação n-speak.Hello
HHHHeeeelllllllloooo
Deve-se notar que qualquer sentença que seja válida para n-speak, para , também é válida para k-speak. Assim, as partes difíceis a serem resolvidas serão valores ímpares de n .
Entrada
Uma sequência que consiste em pelo menos 2 caracteres. A entrada também pode ser uma lista de caracteres. A entrada diferencia maiúsculas de minúsculas.
Saída
Truthy
se a sequência for n-speak, falsey
caso contrário.
Exemplos
Casos verdadeiros
HHeelllloo,, wwoorrlldd!!
TTTrrriiipppllleee ssspppeeeaaakkk
QQQQuuuuaaaaddddrrrruuuupppplllleeee ssssppppeeeeaaaakkkk
7777777-------ssssssspppppppeeeeeeeaaaaaaakkkkkkk
999999999
aaaabb
aaaaaaaabbbbcc
aaaaabbbbb
@@@
Se você deseja gerar casos de verdade adicionais, pode usar este script MathGolf . Coloque a string entre aspas e o 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)
Obviamente, como se trata de código de golfe, prepare-se para aparar alguns bytes!
aaaabbb
aabbab