完整的工作代码基于@MBo的出色优化。这通过了所有测试,网址为https://www.prewars.com/kata/the-maximum-sum-
value-of-ranges-challenge-
version/train/javascript,我收集了这个问题的出处。
function maxSum(arr, ranges) { var max = null; var sums = []; var sofar = 0; for (var i = 0; i <= arr.length; i++) { sums[i] = sofar; sofar += arr[i]; } for (var i = 0; i < ranges.length; i++) { var sum = sums[ranges[i][1]+1] - sums[ranges[i][0]]; if (max === null || sum > max) { max = sum; } } return max;}


