Dada uma sequência de entrada que consiste apenas em letras, retorne o tamanho da etapa que resulta na quantidade mínima de etapas necessárias para visitar todas as letras em ordem sobre um alfabeto de agrupamento, iniciando em qualquer letra.
Por exemplo, pegue a palavra dog
. Se usarmos um tamanho de etapa 1, terminamos com:
defghijklmnopqrstuvwxyzabcdefg Alphabet
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
defghijklmnopqrstuvwxyzabcdefg Visited letters
d o g Needed letters
Para um total de 30 etapas.
No entanto, se usarmos um tamanho de etapa 11, obteremos:
defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefg
^ ^ ^ ^ ^ ^
d o z k v g Visited letters
d o g Needed letters
Para um total de 6 etapas. Essa é a quantidade mínima de etapas, portanto, o resultado do retorno dog
é o tamanho da etapa; 11
.
Casos de teste:
"dog" -> 11
"age" -> 6
"apple" -> 19
"alphabet" -> 9
"aaaaaaa" -> 0 for 0 indexed, 26 for 1 indexed
"abcdefga" -> 1 or 9
"aba" -> Any odd number except for 13
"ppcg" -> 15
"codegolf" -> 15
"testcase" -> 9
"z" -> Any number
"joking" -> 19
Regras
- A entrada será uma string ou matriz de caracteres não vazia, consistindo apenas nas letras
a
paraz
(você pode escolher entre maiúsculas ou minúsculas) - A saída pode ser 0 indexada (ou seja, o intervalo
0-25
) ou 1 indexada (1-26
) - Se houver um empate, você pode imprimir qualquer tamanho de etapa ou todos eles
- Isso é código-golfe , então a menor quantidade de bytes para cada idioma vence!