class Solution:
def LIS(self , arr: List[int]) -> int:
# write code here
# dp[i]表示包含底i个元素的最大上升子序列的长度
if not arr:
return 0
N = len(arr)
dp = [1 for _ in range(N)]
ans = 1
for i in range(1, N):
for j in range(i):
if arr[i] > arr[j]:
dp[i] = max(dp[i], dp[j]+1)
ans = max(ans, dp[i])
return ans