题解 | #Redraiment的走法#

Redraiment的走法

http://www.nowcoder.com/practice/24e6243b9f0446b081b1d6d32f2aa3aa

def lenfirst(nums,i):
    if i in memo.keys():
        return memo[i]
    if len(nums[i:]) == 1:
        return 1
    res = 1
    for j in range(i+1,len(nums)):
        if nums[i] < nums[j]:
            res = max(res, lenfirst(nums, j) + 1)
    memo[i] = res
    return res

def lentotal(nums):
    return max(lenfirst(nums, i) for i in range(len(nums)))

while True:
    try:
        a = input()
        b = list(map(int,input().split()))
        memo = {}
        print(lentotal(b))
    except:
        break
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-24 20:55
阿里国际 Java工程师 2.7k*16.0
程序员猪皮:没有超过3k的,不太好选。春招再看看
点赞 评论 收藏
分享
joe2333:怀念以前大家拿华为当保底的日子
点赞 评论 收藏
分享
11-15 19:28
已编辑
蚌埠坦克学院 硬件开发
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务