//定义比较函数
#define Max(x,y) x>y?x:y
#define Min(x,y) x<y?x:y
long long subArrayRanges(int* nums, int numsSize)
{
long long ans = 0;
int max = 0;
int min = 0;
int n = numsSize;
for (int i = 0; i < n - 1; i++)
{
max = min = nums[i];
//计算以第i个数开始的子数组的范围和
for (int j = i + 1; j < n; j++)
{
//j+1,更新最值
max = Max(max, nums[j]);
min = Min(min, nums[j]);
ans += max - min;
}
}
return ans;
}
2021.12.24-----leetcode.2104
最新推荐文章于 2024-09-27 15:00:48 发布