Solución
solution.tsTypeScript
function countDecodings(message: string): number {
if (!message || message[0] === '0') return 0;
let prev1 = 1;
let prev2 = 1;
for (let i = 1; i < message.length; i++) {
let current = 0;
let singleDigit = parseInt(message[i]);
if (singleDigit >= 1 && singleDigit <= 9) {
current += prev1;
}
let doubleDigit = parseInt(message.substring(i -1, i + 1));
if (doubleDigit >= 10 && doubleDigit <= 26) {
current += prev2;
}
prev2 = prev1;
prev1 = current;
}
return prev1;
}
// No modificar: necesario para evaluar el resultado.
export { countDecodings };0respuestas