题解 | #分糖果问题#

分糖果问题

https://www.nowcoder.com/practice/76039109dd0b47e994c08d8319faa352

class Solution:
    def candy(self , arr: List[int]) -> int:
        # write code here
        l = len(arr)
        if l < 2:
            return l
        res = [1] * l
        # left ---> right
        for i in range(1, l):
            if arr[i] > arr[i-1]:
                res[i] = res[i-1] + 1
        # left <--- right
        for i in range(l-2, -1, -1):
            if arr[i] > arr[i+1]:
                res[i] = max(res[i], res[i+1] + 1)
        return sum(res)

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-27 10:48
点赞 评论 收藏
分享
11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
球球别再泡了:坏,我单9要了14
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务