1 条题解

  • 0
    @ 2024-4-11 19:46:15
    input = open(0).readline
    
    n = int(input())
    a = list(map(int,input().split()))
    dp = [0]*n + [0]
    for i in range(n):
        # 找比a[i]小的中dp最大的
        b = max(list(filter(lambda x:a[x] <= a[i], range(i))) or [-1],key=lambda a:dp[a])
        dp[i] = dp[b] + 1
    print(max(dp))
    

    信息

    ID
    125
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    递交数
    213
    已通过
    77
    上传者