Inspiré par Est-ce une double parole? , J'ai imaginé un défi plus difficile. Étant donné une chaîne, déterminez si la chaîne est n-parler , pour tout .
N-parler est défini en répétant chaque lettre fois. Avec , la chaîneHello
est transformée enHHHHeeeelllllllloooo
. Votre objectif est de déterminer si l'entrée est une sortie valide pour toute transformation en n-parler.
Il convient de noter que toute phrase qui est n-parler valide, pour , est également k-parler valide. Ainsi, les parties difficiles à résoudre seront des valeurs impaires de .
Contribution
Une chaîne composée d'au moins 2 caractères. L'entrée peut également être une liste de caractères. L'entrée est sensible à la casse.
Sortie
Truthy
si la chaîne est n-parler, falsey
sinon.
Exemples
Vrais cas
HHeelllloo,, wwoorrlldd!!
TTTrrriiipppllleee ssspppeeeaaakkk
QQQQuuuuaaaaddddrrrruuuupppplllleeee ssssppppeeeeaaaakkkk
7777777-------ssssssspppppppeeeeeeeaaaaaaakkkkkkk
999999999
aaaabb
aaaaaaaabbbbcc
aaaaabbbbb
@@@
Si vous souhaitez générer des cas véridiques supplémentaires, vous pouvez utiliser ce script MathGolf . Placez la chaîne entre guillemets et la valeur de comme entrée.
Faux cas
Hello, world!
TTTrrriiipppllleee speak
aaaaaaaaaaaaaaaab
Ddoouubbllee ssppeeaakk
aabbab
aaaabbb
a (does not need to be handled)
(empty string, does not need to be handled)
Bien sûr, puisque c'est du golf de code, préparez-vous à couper quelques octets!
aaaabbb
aabbab