0. 题目
1. 动态规划 o(n^2) o(n)
dp[i] : 最长递增序列的长度
cnt[i] : 最长递增序列的个数
dp[i] = max(dp[j])+1 0<=j<i & nums[j]<nums[i]
cnt[i] = cnt[j] dp[j]+1>dp[i] 更新序列最长个数cnt和dp[i]
cnt[i] += cnt[j] dp[j]+1==dp[i]
class Solution:
# 最长递增子序列的个数
def findNumberOfLIS(self, nums):
## 动态规划
n,max_len,res = len(nums),0,0
dp = [0]*n
cnt = [0]*n
for i,x in enumerate(nums):
dp[i]=1
cnt[i]=1
for j in range(i):