以下のような解法は正しくないため注意してください。
2 1 1 0 100
5 10 9 10 9 10 100 200 300 400 500
この問題の制約より、スコアが最大化される が であることは明らかです。
この問題の以下のケースについて、各 のスコアを観察してみましょう。
1 3 4
x = 0: 0 x = 1: 0 x = 2: 1 x = 3: 2 x = 4: 3 x = 5: 2 x = 6: 1 x = 7: 0 ...
を中心として一次関数でスコアが表せそうなことが分かります。
よって、各 について、以下の加算を行い、前から累積和をとることによって各 についての増加分を求めることができます。
以上の手順により、各 についての増加分を求め、再び累積和を取ることにより 各 についてのスコアを求めることができ、その最大値を出力すればよいです。