1.题目


2.思路
首先子数组的取值范围是[a,b]
右区间b的话等于当前的索引i,
左区间a的话等于取max(0,i-nusm[i])
因为是子数组,使用确定完左边界的值,要挨个加元素到右边界num[i]
所以j小于等于i
3.代码实现
java
class Solution {
public int subarraySum(int[] nums) {
int sum=0;
for(int i=0;i<nums.length;i++)
{
int start=Math.max(0,i-nums[i]);
for(int j=start;j<=i;j++)
{
//j=i=0
sum=sum+nums[j];
}
}
return sum;
}
}