1498. 满足条件的子序列数目

Medium

思路

题目大意为:寻找子数组,使的子数组中的最大值和最小值的和小于target并统计子数组的数量。

以上,尝试写一下代码,AC!

代码

python3

class Solution:
    def numSubseq(self, nums: List[int], target: int) -> int:
      nums.sort()
      i = 0 
      j = len(nums)-1
      res = 0
      while i <= j:
        if nums[i] + nums[j] <= target:
          res += 2**(j-i)
          i += 1
        else :
          j -= 1
      return res % (10**9+7)