- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
问题是,
给定一个包含 N 个整数的数组 A,输出使序列不递减所需的最少操作次数。
一个操作表示在数组A[i]中选择一个数,将其与A[i + 1]或A[i - 1]相加,并删除A[i]
问题的链接(西类牙语):https://omegaup.com/arena/problem/Torres#problems
例子:
3
5 2 1
Answer: 2
在这种情况下,我们必须加入所有数字,将序列变为 { 8 },这是非递减的
限制:
N <= 5000
A[i] <= 10^5
我认为这个问题可以用DP来解决,但是我找不到一个能以小而正确的方式表示问题的状态。
提前致谢。
最佳答案
编辑:我错了。。以下算法不能解决问题。
它可以在一次从左到右的线性扫描中完成。让我解释一下我的推理:
如果你加入两个数字A[i]
和 A[i+1]
, 结果大于 A[i]
.如果A[i]左边的部分已经是非递减的,如果A[i] < A[i-1]
,这个操作是必须的.
不必要的加入A[i]
和 A[i+1]
消耗一个操作并使连接的事情变得更加困难,所以我们只在必要时才这样做。
A[i] < A[i-1]
, 加入 A[i]
和 A[i+1]
直到 A[i] >= A[i-1]
.A[i] >= A[i-1]
, 递增 i.附言原始问题描述指出 A[i]
在 1...10^5
范围内,因此明确排除负数,这对算法很重要。
关于arrays - 动态规划最优 "Non-Decreasing Sequence",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46588228/
我正在尝试在r中编写代码,以便找到单变量正态分布的最大似然(而不是对数似然)值。我知道还有其他方法,但是我需要深入了解数值优化才能进行进一步的工作。当我调用'optim'函数时,它似乎根本不会进行迭代
最近我一直在用 php + mysql 做一个相当大的项目。现在我担心我的 mysql。我应该怎么做才能使我的 mysql 尽可能优化?把你知道的都说出来,我将非常感激。 第二个问题,我在每次加载页面
我不太了解 InitializeCriticalSectionAndSpinCount 的文档: http://msdn.microsoft.com/en-us/library/windows/des
我们公司有几种不同的获取潜在客户的方式,以及我们处理的几种类型的潜在客户。每种类型的潜在客户之间只有微小的差异,并且大部分信息与一种或多种其他潜在客户类型共享或相关。我和我的团队正在尝试使用 Solr
ϵ-贪婪策略 我知道 Q-learning 算法应该尝试在探索和利用之间取得平衡。由于我是该领域的初学者,因此我想实现一个简单版本的探索/利用行为。最佳 epsilon 值 我的实现使用 ϵ 贪婪策略
我是一名优秀的程序员,十分优秀!