問題は、任意の数の数値を取って、連続する数字間の差(絶対値を使用して)の最大可能な和を求めています。例えば、数字1,2および3は、合計3(3-1 = 2、および1-2 = 1)を得るために3 1 2に配置される。いくつかの単純なロジックのヘルプが必要です。数時間の間スタックされました。
私の最初の考えは、リストの中で最も高い数字とそれに続く数字の順番で並んでいますが、リストの最後がすべての数字真ん中にはほとんど違いがない。私が考えている唯一の他のものは、すべての可能な順序を見つけて最高額を返すことですが、リストが長くなるとこれは長くなりすぎ、よりよい方法があると思います。そのだけで正しい方向に私を指している場合でも、参考のために
は、ここでは、
9 2 5 3 1 -> 21
7 3 4 5 5 7 6 8 5 4 -> 24
全くすべてのヘルプははるかに高く評価されるだろういくつかのサンプルの入力と出力の数です。
あなたは '9 2 5 3 1 'は' 21'を取得するにはどうすればよいですか?それは '14'ではないでしょうか? – Haris
@ハリス:差異7 + 8 + 4 + 2 = 21で '2 9 1 5 3'に再整理してください。 –
@MOehm、Ok。私は彼が再配置されたものを与えたと思った。 – Haris