while True: try: n, nums = int(input()), list(map(int, input().split())) dp = [1] * n for i in range(n): for j in range(i): if nums[j] < nums[i]: dp[i] = max(dp[i], dp[j] + 1) print(max(dp)) except: break # 梅花桩_动态规划(Python) # 关于初始化 # 数组 dp 中存储着对应 nums 位置的桩最大次数,所以创建的时候默认为 1,因为当前桩本身就是一步。 # 关于状态转移方程...