n = int(input()) D = list(map(int,input().split())) E = list(map(int,input().split())) dp = [ 2*D[i]+E[i] for i in range(n)] ans = max(dp) print(ans) dp[0] = E[0] for i in range(1,n):     dp[i] = max(dp[i-1],E[i]) for j in range(1,n):     ans = 0     for i in range(j,n):         ans = max(ans,2*D[i]+E[i]+dp[j-1])     print(ans)     pre = dp[j]     dp[j] = sum(E[:j+1])     for i in range(j+1,n):         tmp = dp[i]         dp[i] = max(dp[i-1],pre+E[i])         pre = tmp 笔试的时候用了二维数组,内存超限,只过了60% 改了一下,应该能全过
点赞 2

相关推荐

2025-12-31 14:31
湖南科技大学 Web前端
是阿亮吖:一个是这个时间招人比较少,另一个是沟通太少了。六十多份太养生了,最起码沟通个五六百份吧
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务