给你一个整数数组 nums,包含 互不相同 的元素。
nums 的一个子数组 nums[l...r] 被称为 碗(bowl),如果它满足以下条件:
r - l + 1 >= 3。min(nums[l], nums[r]) > max(nums[l + 1], ..., nums[r - 1])。返回 nums 中 碗 子数组的数量。
示例 1:
输入: nums = [2,5,3,1,4]
输出: 2
解释:
碗子数组是 [3, 1, 4] 和 [5, 3, 1, 4]。
[3, 1, 4] 是一个碗,因为 min(3, 4) = 3 > max(1) = 1。[5, 3, 1, 4] 是一个碗,因为 min(5, 4) = 4 > max(3, 1) = 3。示例 2:
输入: nums = [5,1,2,3,4]
输出: 3
解释:
碗子数组是 [5, 1, 2]、[5, 1, 2, 3] 和 [5, 1, 2, 3, 4]。
示例 3:
输入: nums = [1000000000,999999999,999999998]
输出: 0
解释:
没有子数组是碗。
提示:
3 <= nums.length <= 1051 <= nums[i] <= 109nums 由不同的元素组成。