Séries

Séries

Fácil

Instruções

Dada uma string de dígitos, produza todas as substrings contíguas de comprimento n dessa string, na ordem em que aparecem.

Por exemplo, a string "49142" tem as seguintes séries de 3 dígitos:

  • "491"
  • "914"
  • "142"

E as seguintes séries de 4 dígitos:

  • "4914"
  • "9142"

E se você pedir uma série de 6 dígitos a partir de uma string de 5 dígitos, você merece o que receber.

Repare que essas séries só precisam ocupar posições adjacentes na entrada; os dígitos não precisam ser numericamente consecutivos.

Como lidar com casos extremos

Linguagens diferentes no Exercism têm expectativas diferentes sobre qual deve ser o resultado quando o comprimento das substrings é zero. Na trilha Rust, não temos um teste para esse caso, então você é livre para fazer o que achar mais apropriado.

Considere as vantagens e desvantagens das seguintes possibilidades:

  • Derrubar o programa com panic!.
  • Retornar um Result::Err. (não é possível aqui, porque a assinatura da função é fornecida)
  • Retornar um vetor vazio.
  • Retornar um vetor contendo tantas strings vazias quanto o comprimento da string "digits" mais um. (isso tem algumas propriedades matemáticas bem legais!)
Editar via GitHub O link abre em uma nova janela ou aba
Rust Exercism

Tudo pronto para começar Séries?

Crie sua conta no Exercism para aprender e dominar Rust com 99 exercícios e mentoria humana de verdade, tudo de graça.