forked from TheAlgorithms/JavaScript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProblem008.js
More file actions
26 lines (20 loc) · 684 Bytes
/
Problem008.js
File metadata and controls
26 lines (20 loc) · 684 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Problem: https://projecteuler.net/problem=8
const largestAdjacentNumber = (grid, consecutive) => {
grid = grid.split('\n').join('')
const splitGrid = grid.split('\n')
let largestProd = 0
for (const row in splitGrid) {
const currentRow = splitGrid[row].split('').map((x) => Number(x))
for (let i = 0; i < currentRow.length - consecutive; i++) {
const combine = currentRow.slice(i, i + consecutive)
if (!combine.includes(0)) {
const product = combine.reduce(function (a, b) {
return a * b
})
if (largestProd < product) largestProd = product
}
}
}
return largestProd
}
export { largestAdjacentNumber }