Count Number of Special Subsequences LeetCode solution in Python
1# Runtime: 4322 ms (Top 46.43%) | Memory: 18 MB (Top 47.62%)2class Solution:3def countSpecialSubsequences(self, nums: List[int]) -> int:4if not nums:5return 067last_0 = 08last_1 = 09last_2 = 01011for i in nums:12if i == 0:13last_0 = (2 * last_0 + 1) % 100000000714elif i == 1:15last_1 = (last_0 + 2 * last_1) % 100000000716elif i == 2:17last_2 = (last_1 + 2 * last_2) % 100000000718return last_2 % 1000000007