Python RE
查看原帖
Python RE
23590
咒影楼主2021/3/28 16:22

奇奇怪怪。。本机跑完全没问题

应该怎么解决0.0? 提前感谢

# -*- coding: utf-8 -*-

MAX_HIGHT = 50000

def dp(h :int, p: list[int]) -> int :
    if len(p) <= 1:
        return [0,1][p[0] <= h]
    if p[0] > h:
        return dp(h, p[1:])
    return max(dp(h, p[1:]), dp(p[0], p[1:]) + 1)


def ss(d: list[int]) -> int :
    dp = [ 1 for i in range(len(d)) ]
    for i in range(len(d)):
        for j in range(i):
            if d[i] > d[j]:
                dp[i] = max(dp[j]+1, dp[i])
    return max(dp)

d = list(map(int, input().split(" ")))
print(dp(MAX_HIGHT, d))
print(ss(d))

2021/3/28 16:22
加载中...