Uma string x
gera uma string y
se y
for uma substring de uma repetição infinita de x
. Por exemplo abc
gera bcabcab
.
Escreva um programa para encontrar a string mais curta e lexicograficamente menor que irá gerar a entrada. Você recebe na entrada padrão uma única linha de texto. Você deve imprimir a sequência geradora na saída padrão. Por exemplo:
entrada
bcabcabca
resultado
abc
O menor código vence. Você pode assumir que a entrada contém apenas os caracteres az (e uma nova linha à direita, se desejar).
bac
s.
(bca)^n
, o que significa que bca
é tão válido para o exemplo dado quanto abc
.
bca
não é o menor lexicograficamente.
bac
no seu exemplo, e nãoabc
?