你如何使用python解决这个问题?使用python处理行李?最后一个容器,最后一个,第一个行李先出
将行李放入容器中。一旦容器达到其极限(100磅)。你移动到下一个容器。这是你如何加载行李。
当需要卸载数据时,首先卸载最后一个装载的容器(小于100磅),然后从中取出第一个装入的行李箱,然后移除第二个行李箱等)。然后,您将移动到下一个容器。
如果问题不明确。
这里是装阵的样子
假设我们有3个集装箱,这里曾是装载布局
[30,45,15,25,50,20,30,60]
此数组中的最后一个项目是第一个加载。第二个行李后,第一个集装箱不能容纳20lb的行李,因此进入下一个集装箱。
20,50,25进入第二位,15,45,30进入最后一位。
当要卸载时,我们从最后一个容器的第一个行李箱开始,然后依次移动。
因此卸载阵列是
[15,45,30,20,50,25,60,30]
是否有可在输入转换为输出的函数?
请记住,每个容器必须保持在100磅以下?
任何想法或想法?
很抱歉,如果这个问题漫步,这是我在栈上的第一个问题
谢谢!
这是我迄今为止尝试:
A=[15,20,25,45,20,30,65]
output=[20,15,20,45,25,65,30]
def input_output(A):
for i in range(1,len(A)):
B=[]*len(A)
if A[-i]<100:
B[0]=A[-i]
B[i]=A[-i-1]+B[i-1]
if B[i]>100:
for j in range(1,i):
C=[]*len(A)
C[-i]=A[i-len(A)]# Need a subarray to get reversed.
#I don't feel this is going the right direction
# C is my intended output array
有你自己试过什么? –
我曾试过考虑过它。该算法是有道理的,但我似乎无法实现它A = [15,20,25,45,20,30,65] B = [20,15,20,45,25,65,30] 对于i在范围(1,LEN(A)): B = [] * LEN(A) 如果A [-i] <100: B [0] = A [-i] B [i] = A [-i-1] + B [i-1] 如果B [i]> 100: (i)范围内(i,0): #需要一个子阵列才能颠倒过来。 漂亮卡住 – shabieh2
把代码放在上面的问题中(缩进4个空格,使其显示为代码)。 – AChampion