Solución
solution.tsTypeScript
function wordInMatrix(matrix: string[][], word: string): boolean {
// TODO: Implementa tu solución aquí
const verticalWords: Record<number, string> = {};
for( const array of matrix ) {
// reduce() genera una palabra de todas las letras del subarray
// => Comprueba (includes) las líneas horizontales en busca de la palabra:
if( array.reduce( ( word, letter ) => word + letter, '' ).includes(word) ) {
return true;
}
// Suma cada letra del mismo índice a la propiedad:
array.forEach( (letter, index) => {
verticalWords[index] ? verticalWords[index]+= letter : verticalWords[index] = letter;
})
}
// Comprueba las líneas vertciales en busca de la palabra:
console.log({verticalWords})
for( const verticalWord of Object.values(verticalWords) ) {
console.log({verticalWord})
// Comprueba si cada palabra vertical generada antes contiene la word buscada
if( verticalWord.includes(word) ) {
return true;
}
continue;
}
return false;
}
// No modificar: necesario para evaluar el resultado.
export { wordInMatrix };0respuestas