Solución

@abrahamjlr
·hace 4dTypeScript
solution.tsTypeScript
function countDecodings(message: string): number {
  if (!message || message[0] === '0') return 0;

  let p1 = 1, p2 = 0;

  for (let i = 0; i < message.length; i++) {
    let current = message[i] !== '0' ? p1 : 0;

    const pair = parseInt(message.substring(~-i, -~i));

    if (pair >= 10 && pair <= 26) 
      current += p2;

    [p2, p1] = [p1, current];
  }

  return p1;
}

// No modificar: necesario para evaluar el resultado.
export { countDecodings };
0respuestas
Respuestas
0

Aún no hay respuestas

¡Sé el primero en responder!

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.
Markdown