Hackerrank: Number Line Jumps

En este post te voy a explicar como resolví el challenge: Number Line Jumps de la plataforma Hackerrank con Scala.

Primeros pasos.

El code challenge consiste en averiguar si dadas una posición inicial, y un valor de saltos, dos canguros se encontraran en la misma ubicación, al mismo tiempo.

Tienes 3 variables por cada canguro, posición inicial (initialPosition), pasos (steps) e iteración (iteration). Ejemplo:

Canguro1 → initialPosition = 0, step = 3

Canguro2→ initialPosition = 4, step = 2

Cada iteración incrementa la posición:

1 → C1 = 0 + 3, C2 = 4 + 2.     3 != 6

2→ C1 = 0 + 6, C2 = 4 + 4.     6 != 8

3→ C1 = 0 + 9, C2 = 4 + 6.    9 != 10

4→ C1 = 0 + 12, C2 = 4 + 8   12 == 12

La condición se cumple en la iteración 4, el resultado es «YES».

A tener en cuenta.

El peor escenario posible es donde se tengan que hacer 1000 iteraciones, esta es una restricción del problema mismo.

Ejemplo.


 

Gustavo Sánchez

Soy especialista en escribir software de calidad. Mediante el uso de marcos de trabajo, técnicas y automatización de procesos he podido reducir los costes operativos de los sistemas de la empresa. Sistemas confiables y adaptables producen clientes felices.

Site Footer