問題是要求採取任何數量的數字,並找出連續數字之間的差異(使用絕對值)的最高可能總和。例如,數字1 2和3將被安排3 1 2以得到3的總和(3-1 = 2,並且1-2 = 1)。需要一些簡單的邏輯幫助,困住了幾個小時
現在我的第一個想法是採取列表中最高的數字,然後是最低的數字,並以這種方式進行排列,但這並不奏效,因爲列表的末尾將會包含所有數字在中間積累幾乎沒有差異。我唯一想到的其他事情是找到每一個可能的順序並返回最高金額,但是如果列表較長,這將會花費太長時間,我認爲可能有更好的方法。
僅供參考這裏有一些樣品的輸入和輸出數字
9 2 5 3 1 -> 21
7 3 4 5 5 7 6 8 5 4 -> 24
任何幫助都將不勝感激,哪怕它只是指着我正確的方向。
你怎麼'21'的'9 2 5 3 1'?它不應該是'14'嗎? – Haris
@Haris:重新排列爲「2 9 1 5 3」,差異7 + 8 + 4 + 2 = 21. –
@Meehm,好的。我以爲他給了重新安排的一個。 – Haris