1. 程式人生 > >計算最小步驟

計算最小步驟

操作 計算 步驟 多少 等於 按順序 元素 nbsp 下一個

鑒於 N個整數數組,你必須找到 多少次 ,你必須 加起來最小的數字 數組中,直到 它們的總和 變得大於或等於 ?

舉例:

minimumSteps({8 , 9, 4, 2}, 23) ==> return (3)

我們 添加兩個最小的元素 (4 + 2), 它們的總和是6。

然後 我們 為它添加下一個最小的數字(6 + 8),因此總和變為14。

現在 我們 添加下一個最小的數字(14 + 9),因此總和變為23 。

現在 結果大於或等於 23, 因此輸出是(3)即操作了3步

def minimum_steps(numbers,value):
num_value = 0
dange = 0
#第一個for循環為排序數組number,排序之後只需要按順序加減即可
for j in range(len(numbers)):
for i in range(len(numbers)-1):
if i == j:
continue
if numbers[i] > numbers[i+1]:
num = numbers[i]
numbers[i] = numbers[i+1]
numbers[i+1] = num
for i in numbers:
num_value = num_value+i
if num_value>=value:
return dange #正常輸出,使用print
dange +=1

計算最小步驟