人們常用說「十年磨一劍」來比喻下的功夫深,但是這句話對於華山磨劍坊就不適用 了,因為要磨劍的客人非常的多,一把劍如果磨太久,客人等待的時間過長是會被客訴的。
華山磨劍坊目前有 $n$ 筆訂單,每筆訂單要磨一把劍,每把劍所需的時間不盡相同。磨劍師傅每次只能磨一把劍,現在希望每一筆訂單的完成時間之總和能夠最小, 希望能找出最好的磨劍順序。
舉例來說,如果有四把劍,磨劍需要的時間分別是 $(3,1,3,4)$,如果以 $(3,1,3,4)$的順序來磨,第一把的完成時間是 $3$,第二把完成 時間是 $3+1=4$,第三把是 $3+1+3=7$,第四把是 $3+1+3+4=11$,總和是 $3+4+7+11=25$。 如果把順序改成 $(1,3,3,4)$,那麼完成時間分別是 $(1,4,7,11)$,總和是 $23$,這是 這一題最好的解。
第一行是一個正整數 $n$,
第二行有 $n$ 個正整數是每一把劍需要的時間,同行數字間以空白間格。$n$ 與每把劍的時間都不超過 $10^5$。
輸出最小的完成時間總和。
4 3 1 3 4
23
ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |