@@ -208,20 +208,41 @@ const matrix = [
208208] ;
209209
210210function greatestProduct ( numbersArray ) {
211- let multipliedNumbers = 0
211+ let verticalMultiply = 0
212+ let horizontalMultiply = 0
212213 for ( let i = 0 ; i + 3 < numbersArray . length ; i ++ ) {
213214 for ( let j = 0 ; j < numbersArray [ i ] . length ; j ++ ) {
214215 for ( let k = 0 , multiplyResult = 1 ; k <= 3 ; k ++ ) {
215216 multiplyResult = ( numbersArray [ i + k ] [ j ] ) * multiplyResult
216217 //console.log(`iteraccion ${k} -> multiplyResult = ${multiplyResult}`)
217- if ( multiplyResult > multipliedNumbers ) {
218- multipliedNumbers = multiplyResult
218+ if ( multiplyResult > verticalMultiply ) {
219+ verticalMultiply = multiplyResult
219220 }
220221 }
221222 //console.log(`////`)
222223 }
223224 }
224- return multipliedNumbers
225+
226+ for ( let i = 0 ; i < numbersArray . length ; i ++ ) {
227+ for ( let j = 0 ; j + 3 < numbersArray [ i ] . length ; j ++ ) {
228+ for ( let k = 0 , multiplyResult = 1 ; k <= 3 ; k ++ ) {
229+ multiplyResult = ( numbersArray [ i ] [ j + k ] ) * multiplyResult
230+ //console.log(`iteraccion ${k} -> multiplyResult = ${multiplyResult}`)
231+ if ( multiplyResult > horizontalMultiply ) {
232+ horizontalMultiply = multiplyResult
233+ }
234+ }
235+ //console.log(`////`)
236+ }
237+ }
238+ //console.log(`verticalMultiply = ${verticalMultiply}`)
239+ //console.log(`horizontalMultiply = ${horizontalMultiply}`)
240+
241+ if ( verticalMultiply >= horizontalMultiply ) {
242+ return verticalMultiply
243+ } else {
244+ return horizontalMultiply
245+ }
225246}
226247
227248greatestProduct ( matrix )
0 commit comments