18 lines
414 B
ReasonML
18 lines
414 B
ReasonML
let arr = [-7, 1, 5, 2, -4, 3, 0]
|
|
let sum = Js.Array2.reduce(arr, \"+", 0)
|
|
let len = Js.Array.length(arr)
|
|
|
|
let rec aux = (acc, i, left, right) => {
|
|
if (i >= len) { acc } else {
|
|
let x = arr[i]
|
|
let right = right - x
|
|
if (left == right) {
|
|
let _ = Js.Array2.push(acc, i)
|
|
}
|
|
aux(acc, i+1, (left + x), right)
|
|
}
|
|
}
|
|
let res = aux([], 0, 0, sum)
|
|
Js.log("Results:")
|
|
Js.Array2.forEach(res, Js.log)
|