Esta é uma variante de Reproduzir a cadeia de palavras e Construir uma longa cadeia de palavras .
A entrada é uma lista não vazia de palavras únicas com pelo menos 2 caracteres de comprimento em caracteres de [az]. Você precisa gerar o comprimento da cadeia mais longa possível, onde cada palavra subsequente começa com a última letra da palavra anterior. Você pode começar com qualquer palavra da lista.
Outra mudança é que você pode repetir qualquer palavra da lista. No entanto, você não pode repetir nenhum bloco de duas palavras. Por exemplo,
cat->tac->cat
é permitido, mas cat->tac->cat->tac
não é, porque você repetiu um bloco de duas palavras ( cat->tac
). Além disso, você não pode usar a mesma palavra duas vezes seguidas (por exemplo eye->eye
).
Exemplos:
cat dog tree egg
=> 3 (gato-> árvore-> ovo)new men ten whim
=> 5 (dez-> novo-> capricho-> homem-> novo)truth fret heart his
=> 5 (fret-> verdade-> coração-> verdade-> his)we were stew early yew easy
=> 9 (ensopado-> eram-> cedo-> teixo-> eram-> fácil-> teixo-> nós-> fácil)tac cat tac cot tac can
=> 6 (tac-> gato-> tac-> cot-> tac-> lata)
(Deixe-me saber se eu cometi um erro em algum desses exemplos ou se você tiver mais.)
"cat dog tred xy yz zx"
retorna4
. Isso está correto? Não deveria ser3
?