观光景点组合得分问题|豆包MarsCode AI刷题

25 阅读1分钟

1.问题

2.思路

题目要求找到任意一对景点,使得组合得分达到最高,并输出这个最高得分。可以用穷举法,写两层循环,遍历每一种组合。

3.代码

def solution(values: list) -> int:
    # write code here
    max_score = 0
    for i in range(len(values)):
        for j in range(i + 1, len(values)):
            max_score = max(values[i] + values[j] + i - j, max_score)      
    return max_score  # Placeholder return

if __name__ == '__main__':
    print(solution(values=[8, 3, 5, 5, 6]) == 11)
    print(solution(values=[10, 4, 8, 7]) == 16)
    print(solution(values=[1, 2, 3, 4, 5]) == 8)