answer2 = {
const sIdx = answer1.i;
const sum = answer1.val;
const ranges = new Set();
let rIdx = -1;
for (let i = 0; i + 1 < sIdx && rIdx < 0; i++) {
const rangeSum = input[i] + input[i + 1];
if (rangeSum < sum) ranges.add({ i, r0: input[i], sum: rangeSum });
}
let rangeLength = 2;
while (ranges.size > 1) {
for (let range of ranges) {
const iEnd = range.i + rangeLength;
if (iEnd >= sIdx) {
ranges.delete(range);
} else {
const rEnd = input[iEnd];
range.sum += rEnd;
if (range.sum > sum) {
ranges.delete(range);
} else if (range.sum === sum) {
return { i: range.i, sum: range.r0 + rEnd };
}
}
}
rangeLength++;
}
}