Sum of Good Subsequences
You are given an integer array nums. A good subsequence is defined as a subsequence of nums where the absolute difference between any two consecutive elements in the subsequence is exactly 1.
Return the sum of all possible good subsequences of nums.
Since the answer may be very large, return it modulo 10^9 + 7.
Note that a subsequence of size 1 is considered good by definition.
Example 1
Input
nums = [1,2,1]Output
14The good subsequences are [1], [2], [1], [1,2], [2,1], and [1,2,1], and the sum of their elements is 14.
Example 2
Input
nums = [3,4,5]Output
40The good subsequences are [3], [4], [5], [3,4], [4,5], and [3,4,5], and the sum of their elements is 40.
Constraints
- 1 <= nums.length <= 10^5
- 0 <= nums[i] <= 10^5