【发布时间】:2022-01-04 22:28:53
【问题描述】:
问题:
给定一个整数数组 A 和分数 S = 0。对于数组中的每个位置,您可以执行以下操作之一:
- 放置一个“(”。分数将是 S += Ai
- 放置一个“)”。分数将是 S -= Ai
- 略过
为了使括号平衡,您可以获得的最高分是多少?
限制:
- |艾|
- 数组 A 的大小:
P/S:
我尝试了很多方法,但我最好的方法是使用 O(3^n) 的蛮力。有没有办法在 O(n.logn) 或更短的时间内解决这个问题?
【问题讨论】:
-
这是在线测试的地方吗?数组可以有多大?有时间限制吗?
-
@KellyBundy 它来自我学校的一个古老的私人比赛。我刚刚添加了限制
标签: algorithm dynamic-programming brackets