Series

Series

Fácil

Instrucciones

Dado un string de dígitos, devuelve todas las subcadenas contiguas de longitud n de ese string en el orden en que aparecen.

Por ejemplo, el string «49142» tiene las siguientes series de 3 dígitos:

  • «491»
  • «914»
  • «142»

Y las siguientes series de 4 dígitos:

  • «4914»
  • «9142»

Y si pides una serie de 6 dígitos a partir de un string de 5 dígitos, te mereces lo que te salga.

Ten en cuenta que estas series solo tienen que ocupar posiciones adyacentes en la entrada; los dígitos no tienen por qué ser numéricamente consecutivos.

Cómo manejar los casos límite

Los distintos lenguajes de Exercism tienen expectativas diferentes sobre cuál debería ser el resultado si la longitud de las subcadenas es cero. En la pista de Rust, no tenemos un test para ese caso, así que eres libre de hacer lo que consideres más apropiado.

Considera las ventajas y desventajas de las siguientes posibilidades:

  • Hacer que el programa se bloquee con panic!.
  • Devolver un Result::Err. (no es posible aquí, porque la firma de la función ya viene dada)
  • Devolver un vector vacío.
  • Devolver un vector que contenga tantos strings vacíos como la longitud del string «digits» más uno. (¡esto tiene algunas propiedades matemáticas interesantes!)
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
Rust Exercism

¿Listo para empezar Series?

Regístrate en Exercism para aprender y dominar Rust con 99 ejercicios y mentoría humana real, todo gratis.