From 2cd2d1ca85128f914b8b7d26aebfe68a55288e5d Mon Sep 17 00:00:00 2001 From: williamkemeny <83621324+williamkemeny@users.noreply.github.com> Date: Sun, 21 May 2023 17:33:58 -0400 Subject: [PATCH] Update wordsearch.js --- wordsearch.js | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/wordsearch.js b/wordsearch.js index e21a8b8f..165017f9 100644 --- a/wordsearch.js +++ b/wordsearch.js @@ -1,8 +1,31 @@ -const wordSearch = (letters, word) => { - const horizontalJoin = letters.map(ls => ls.join('')) - for (l of horizontalJoin) { - if (l.includes(word)) return true +const wordSearch = (letters, word) => { + if (!Array.isArray(letters) || word === undefined || word === "") { + return false; + } + const horizontalJoin = letters.map((ls) => ls.join("")); + if (searchForWord(horizontalJoin, word)) { + return true; + } + + const verticalJoin = []; + let temp = ""; + + for (let i = 0; i < letters[0].length; i++) { + temp = ""; + for (let j = 0; j < letters.length; j++) { + temp += letters[j][i]; } -} + verticalJoin.push(temp); + } + if (searchForWord(verticalJoin, word)) { + return true; + } + + return false; +}; -module.exports = wordSearch \ No newline at end of file +const searchForWord = (array, word) => { + for (l of array) { + if (l.includes(word)) return true; + } +};