codeforce 922 div 2 D
dp[i] = min(j ~ i , dp[j]) + a[i],(sum[j + 1, i - 1] <= x) 在连续子序列满足的情况下,求删除数的最小花费,如果花费小于x 返回true。1 2 3 4 5 如果按我们的思路当x = 5时 不满足,它在没有遍历后面的时候直接把 1 先删去了,需要优化check函数,所以现在我们需要动态规划的思想。但是需要优化找最小的dp[j]的过程,所以需要使用优先队列来存一下每个满足条件的dp[i];dp[i] 表示 删除第 i 个数 使前面全部满足的最小花费,
原创
2024-01-31 11:51:21 ·
159 阅读 ·
1 评论