【发布时间】:2021-09-04 10:42:19
【问题描述】:
问题陈述是->
我们想使用两台扫描仪扫描 N 个文档。如果 S1 和 S2 是扫描仪 1 和扫描仪 2 扫描单个文档所用的时间,求扫描所有 N 个文档所需的最短时间。
例子:-
S1 = 2,S2 = 4,N = 2
输出:4
解释:这里有两种可能性。 在扫描仪 1 中扫描两个文档或 在每个扫描仪中扫描一个文档。 在这两种情况下所需的时间都是 4。
我想出了一个解决方案,我们可以找到所有组合并将它们插入到集合中。最小值将是集合中的第一个元素。
问题是解决方案的时间复杂度为 O(n),但可接受的时间复杂度为 O(logn)。
我正在考虑二分搜索,但无法提出解决方案。
应该采用什么方法?
【问题讨论】:
标签: c++ c++11 set binary-search