我必須寫一個函數(「高清stackHeights」),您是想採取一個參數一批杯子,並返回一個可以與數杯建成一個堆棧的最大高度。例如,如果你有7杯,你可以建立高度3的堆棧,但你沒有足夠的身高4的堆棧,因爲你只能有一個杯底部行,你需要4Python - 堆疊杯?
「提示:從上使用,同時建立上下
輸出:
>>> stackHeight (7)
3
>>> stackHeight (3)
2
>>> stackHeight (12)
4
這就是我現在所擁有的:
def stackHeight(nCups):
nCups = int(input())
cups = {}
for i in range(nCups):
line = input().split()
if line[0].isnumeric():
cups[int(line[0])/2] = line[1]
else:
cups[int(line[1])] = line[0]
print("\n".join([cups[k] for k in sorted(cups.keys())]))
我在做什麼錯誤的代碼沒有按」 t似乎跑f或某種原因。請記住,我對編程還很陌生,所以對羣集感到抱歉。
只要到達input(),程序就會停止並等待輸入。你不應該有任何調用'input()'_inside_你的函數。 –
你的函數中有兩個'input'語句。第一個只會覆蓋你的輸入參數,因此是毫無意義和多餘的。你有另一個循環。我沒有看到你的函數描述中需要輸入文字的任何東西,爲什麼呢? –