海王的煩惱

發布時間: Nov. 10, 2022, 12:10 p.m.   最後更新時間: Nov. 10, 2022, 12:15 p.m.   時間限制: 1000ms   記憶體限制: 128M

沒想到你居然寫到了這題,可是你是逃不出無法破台的命運的,雖然說這只是一次驗收,但社幹們也不想就這樣輕易被破台,所以就由我副社長來搞事啦,而且只要你寫出這題就可以保證留幹了,聽起來不錯對吧

自從三校聯合迎新之後某社交達人鬧鐘跟竹女變得熟絡,現在他有很多天的空閒,所以他打算每天都邀一些人去約會,他現在排了一個列表,並規定一定要按照列表順序約出去,每天可以約的人沒限制,且鬧鐘把每個人都做了評分,分數越高代表他越喜歡,並且在每天結束後會給那天一個分數,這個分數的計算方法是用一個二次函數$f(x)=a \times x^2+b \times x+c$,x帶入該天約出去所有女生的分數的總和,他希望計算出約完所有女生後每天分數總和的最大值為多少,所以請你寫一個code幫他計算。

輸入由三行組成。
第一行包含一個整數$n$,表示可以約出來的女生總數。
第二行包含三個整數$a, b, c$,代表分數轉換函數$f(x)$的各項係數。
第三行包含$n$個整數$x_1, x_2, \dots, x_n$,分別代表隊列中第$1, 2, \dots, n$位女生的分數。
其中$1 \leq n \leq 10^6$
$-5 \leq a \leq -1$
$-10^7 \leq b,c \leq 10^7$
$1 \leq x_i \leq 100$

請輸出分數和的最大值為何。

複製範例
4
-1 10 -20
2 2 3 4
9

最佳解為

第一天約兩個,分數分別為2、2,和為4,帶入f(x)得4

第二天約一個,分數為3,和為3,帶入f(x)得1

第三天約一個,分數為4,和為4,帶入f(x)得4

每天分數和最大為9

dp 斜率優化 單調性

竹中軟研38th第一次競賽(社內賽)