- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我对以下问题感到困惑。你有好主意吗?当然,暴力破解所有排列可以解决问题。但是,还有其他方法吗?
假设你卖苹果,每个苹果都有一个相关的“腐烂时间”,直到它不能再卖了。
还假设所有苹果都有一个单独的价格,这取决于它们的美学。价格不变,直到苹果烂掉,然后变成零。
卖一个苹果需要一定的时间,因此你不能卖掉所有苹果,只能卖前 k 个苹果。
您应该按什么顺序出售缓慢腐烂的苹果,以最大限度地提高 yield ?
您有什么提示可以帮助您了解哪种类型的文献吗?喜欢运筹学或排队论?
最佳答案
我认为一个简单的动态规划就可以了:
T(i, j) = 0 #if i>|apples|
T(i, j) = T(i+1, j) #if j/k >= rot(i)
T(i, j) = max(value(i) + T(i+1, j+1), T(i+1, j)) #if j/k < rot(i)
用T(i, j)
表示卖出j个苹果后卖到第i个苹果的最大利润。
在每个 DP 步骤中,您必须在出售或不出售当前苹果之间做出最佳选择。如果到目前为止已售出的苹果数量 (j
) 除以按时间单位可以销售的苹果数量 (k
) 达到苹果的“腐烂时间”( rot(i)
),不能卖。
这里的一个技巧是您必须先按“腐烂时间”对苹果进行排序。
我将在此处粘贴 Ilmari Karonen 的评论,因为它解释了算法的正确性,不应该只是评论。
Note that the correctness of this solution depends crucially on the observation that, if a certain subset of the apples can be sold at all, it can be sold in ascending order by expiry time. Thus, if you consider all the apples in ascending order by expiry time, the only decision you need to make for each apple is whether to sell it now or to not sell it at all
这是一个简单的 Python 递归实现(可以很容易地记住多项式时间):
这个程序还解释了必须选择哪些苹果才能使结果最大化:
A = [(2, 3), (1, 1), (3, 4), (1, 2)]
def solve(A, k, i, j):
if i>=len(A): return (0, [])
ttr, value = A[i]
if j/k >= ttr:
return solve(A, k, i+1, j)
else:
answer, explanation = solve(A, k, i+1, j+1)
return max((value+answer, [A[i]]+explanation), solve(A, k, i+1, j))
print solve(sorted(A), 1, 0, 0)
这个输出:
(9, [(1, 2), (2, 3), (3, 4)])
关于algorithm - 及时卖烂苹果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29853000/
是否可以为字符串对象定义代数? 例如: 苹果 + 苹果 = 2 个苹果 苹果 + 橙 = 橙 + 苹果 苹果 + 3.5 苹果 = 4.5 苹果 是否有内置函数可以做到这一点?是否有必要创建类结构?
我将为餐厅创建一个 iOS 应用程序,这样您就可以通过该应用程序轻松支付食物费用。所以看看苹果的规则: https://developer.apple.com/app-store/review/gui
当我通过在断点处停止来调试程序时,队列和堆栈显示为 size=0(当它们不是时),但其他变量(如 vector )工作正常。 MacOS 10.14.1 Mojave Cmake 3.12.3 Xco
我正在尝试在圆形图上重现圆形末端,但我自己无法解决。 我试过谷歌但找不到准确的术语来重新创建它。 任何人都可以引导我朝着正确的方向前进或告诉我我在寻找什么吗? 我想要一个看起来像这样的圆形图 http
出于某种原因,我的脚本拒绝直接从 Text Wrangler 运行,但在导入到终端时运行正常。 import math def main(): print("This program find
我在 mac 上,我写了很多 python 脚本。 每次我需要运行它们时,我都必须输入“python script_name.py”。有什么方法可以让我只需要键入“p script_name.py”吗
我刚刚在 Mac OS X (Snow Leopard) 上安装了 python 2.6,当我启动 IDLE 时它一直在退出! 我通过以下方式删除了所有 python 安装:rm -rf/Librar
北京时间12月18日晚间消息,据国外媒体报道,亚马逊、谷歌和苹果公司周三达成一项罕见的合作伙伴关系,旨在打造智能家居新标准,让消费者使用起来更方便。 当前,亚马逊、谷歌和苹果都在积极争抢智能家居用
我一直在研究我们是否可以创建一个应用程序,可以在苹果的 native 媒体播放器中播放 protected DRM 视频文件。但我可以收集到的是,苹果将不允许受 DRM 保护的视频文件通过媒体播放器进
个人开发者通常需要多长时间才能被接受加入开发者计划? 我今天付了微薄的钱,但我感到不耐烦。 最佳答案 第二天我就被录取了,感觉很棒。还带着我的照片和那封电子邮件;-) 关于iphone - 苹果 iP
我是 CIT 的理学学士学生。我有一个项目,我想在某种主机/客户端中使用 Java 小程序和 JDBC。 我的小程序在本地主机上正常工作,但是当我将其部署到 apache Web 服务器上时,我失去了
一周前,我在代码中编写了一个名为 getline 的函数,但该函数不起作用。从那时起,每当我将函数命名为 getline 并尝试编译它时,它都不起作用。如果我将函数名称更改为其他名称,它会再次起作用。
我在使用苹果时遇到问题 examples对于 vDSP。我尝试了所有这些,但最后我需要卷积样本。我什至无法通过链接器获取它: Undefined symbols for architecture i3
我正在尝试将 Apple map 集成到我的 iPhone 应用程序中,以显示两个位置之间的路线。但它不会显示任何路线,并且会简单地在控制台中打印大量消息。 我位于印度孟买。当我尝试在 iPhone
也许你们都看到了Apple’s HTML5 showcase .问题是,他们没有在网上提供任何可下载的内容,对吗? 有没有人找到像 theirs 这样的 360 示例?我们可以按原样下载和使用,而不是
friend 们,请帮忙! 我不知道如何做“wait.until”。 我将 Appium 与 UIAutomator 结合使用。 我的测试会等到新应用程序的页面加载完毕,并且文本字段中的“文本 1”将
Android 比较 2 个图像以使用位图代码并告诉水果类别是水果(苹果/香蕉)还是不是水果。 我有问题与 Bitmap 和 BitmapFactory 比较有运行时错误,我有问题的解决方案。 act
Apple 有一个特殊的 URL,可用于指向物理位置的超链接,触发本地 map 应用程序启动并呈现指定位置: http://maps.apple.com/?q=SEARCH According to
我正在使用 MKMapView 将本地 map 添加到我的 iOS 应用程序。我只想确定是否需要任何类型的身份验证 key 或应用程序 ID?我会将此应用程序上传到 Apple Store。 最佳答案
你好,我想在苹果 map 上做针点聚类。它的可能解决方案是什么。现在我的屏幕上显示了一个针点的苹果 map 。 Pin point分组后的代码是什么。提前致谢 最佳答案 在 map 上聚类/显示大量点
我是一名优秀的程序员,十分优秀!