小朋友们去邻里拜年,每个家里有不同数量的糖果。规则是:不能连续进入两个相邻的房子(即不能同时取相邻两家的糖果)。目标是拿到最多糖果。以下是代码实现,请补全横线。( )

uj806947 单选题 共 个子题
def visit(nums):
    if not nums:
        return 0

    size = len(nums)
    if size == 1:
        return nums[0]

    dp = [0] * size
    dp[0] = nums[0]
    dp[1] = max(nums[0], nums[1])

    for i in range(2, size):
        __________________________

    return dp[size - 1]
if __name__ == "__main__":
    nums1 = [1,2,3,1]
    print(visit(nums1))

    nums2 = [2,7,9,3,1]
    print(visit(nums2))

    nums3 = [5]
    print(visit(nums3))

    nums4 = []
    print(visit(nums4))
A

dp[i] = dp[i - 1] + nums[i]

B

dp[i] = max(dp[i - 1], dp[i - 2] * nums[i])

C

dp[i] = max(dp[i - 1], dp[i - 2] + nums[i])

D

dp[i] = dp[i - 2] + nums[i]

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧