用 Python 找出可以将多少个盒子放入仓库的程序
假设,我们有两个包含整数的数组。一个列表包含一些单位宽度框的高度,另一个数组包含仓库中房间的高度。房间编号为 0...n,房间的高度在数组 godown 中各自的索引中提供。我们必须找出可以推入仓库的箱子数量。有几件事必须牢记,
箱子不能叠在一起。
可以更改框的顺序。
箱子从任何一侧放入仓库,可以从左侧或右侧。如果一个盒子比房间的高度高,那么这个盒子和它右边的所有盒子都不能被推入仓库。
因此,如果输入类似于 box = [4, 5, 6], godown = [4, 5, 6, 7],那么输出将是 3 作为输入给出的所有三个框都可以放入 godown。
示例(Python)
让我们看看以下实现以获得更好的理解 -
def solve(boxes, godown):boxes.sort(reverse = True)
l, r = 0, len(godown) - 1
bi, ret = 0, 0
while bi < len(boxes) and l <= r:
if godown[l] > godown[r]:
if boxes[bi] <= godown[l]:
ret += 1
l += 1
else:
if boxes[bi] <= godown[r]:
ret += 1
r -= 1
bi += 1
return ret
print(solve([4, 5, 6], [4, 5, 6, 7]))
输入
[4, 5, 6], [4, 5, 6, 7]输出结果
3
以上是 用 Python 找出可以将多少个盒子放入仓库的程序 的全部内容, 来源链接: utcz.com/z/331740.html