Решение: записывая ответы для нескольких входных значений, например 2, 3 и 4, заметим, что второй параметр является рекурсивным. Другими словами, область int y рекурсивно определяет функцию main. В отличие от предыдущего случая, чтобы получить окончательный ответ, эта задача требует сбора ответов от всех подзадач.
There is more concise version of arrayMax
function arrayMax(arr) {
if(arr.length == 1) {
return arr[0];
}
const pivot = arr.length/2;
const left = arrayMax(arr.slice(0, pivot));
const right = arrayMax(arr.slice(pivot));
return left > right ? left : right
}