4088. 峰值与谷值的差
难度简单
题目描述
给你一个长度为 n 的整数数组 nums。
如果满足以下 所有 条件,则下标志 i 被称为 峰值 :
0 < i < n - 1nums[i] > nums[i - 1]nums[i] > nums[i + 1]
如果满足以下 所有 条件,则下标志 i 被称为 谷值 :
0 < i < n - 1nums[i] < nums[i - 1]nums[i] < nums[i + 1]
返回一个整数,表示所有峰值之和与所有谷值之和的 差值 。
示例 1:
输入: nums = [1,5,2,4,1,3,0]
输出: 9
解释:
- 峰值分别是
nums[1] = 5、nums[3] = 4和nums[5] = 3。 - 谷值分别是
nums[2] = 2和nums[4] = 1。 - 峰值之和与谷值之和的差值为
(5 + 4 + 3) - (2 + 1) = 9。因此,答案是 9。
示例 2:
输入: nums = [-5,-6,-1,-2,5,3,2]
输出: 12
解释:
- 峰值分别是
nums[2] = -1和nums[4] = 5。 - 谷值分别是
nums[1] = -6和nums[3] = -2。 - 峰值之和与谷值之和的差值为
(-1 + 5) - (-6 + (-2)) = 12。因此,答案是 12。
示例 3:
输入: nums = [6,5,2,5,5,3,6]
输出: -5
解释:
- 数组中没有峰值。
- 谷值分别是
nums[2] = 2和nums[5] = 3。 - 峰值之和与谷值之和的差值为
(0) - (2 + 3) = -5。因此,答案是 -5。
提示:
3 <= n == nums.length <= 100-100 <= nums[i] <= 100
解法
方法一
1 | |
1 | |
1 | |
1 | |