T4

卑微的OIer發表於2024-03-10

[SEOI2024 普及組] T4義大利麵序列

題目背景

眾所周知,小傻管管喜歡烹飪。傻傻的他還喜歡一些弱智的東西,於是他準備將搞笑諾貝爾獎中的義大利麵問題應用在烹飪上!

題目描述

小傻管管把一根義大利麵分成\(n\)小塊(\(3\le n\))。每塊有一個美味值\(a_i\)\((-1000\le a_i \le 1000)\)。然後他會把義大利麵橫著扔向地面,據搞笑諾貝爾獎的義大利麵定理,這根義大利麵會等機率以劃分處為界線分裂成均非空的三段。管管會扔掉中間一段並將左邊的一段和右邊的一段撿起來烹飪。Jeffery定義一根義大利麵貢獻的美味係數為這根麵條剩下的兩段上各自的美味值最大值之乘積。小傻管管想要知道這根義大利麵所貢獻的美味係數的數學期望是多少?

聰明的小傻管管還發現,在\(a_i\)隨機給出且範圍為\([-k,k]\)的情況下,當義大利麵長度趨近於無窮大,這根義大利麵所貢獻的美味係數會不斷趨近於一個整數。

輸入格式

第一行兩個整數,表示\(n\)\(k\)。中間用空格隔開。

第二行\(n\)個整數,表示\(a_i\),中間用空格隔開。

輸出格式

第一行一個小數,表示這根義大利麵所共獻的數學期望是多少,與標準答案之差不超過\(10^{-4}\)即正確。

第二行一個整數,表示在\(a_i\)隨機給出且範圍為\([-k,k]\)的情況下,當義大利麵長度趨近於無窮大,這根義大利麵所貢獻的美味係數所不斷趨近於的一個整數。

樣例 #1

樣例輸入 #1

4 4
1 2 3 4

樣例輸出 #1

5.333333333
16

提示

有以下三種劃分:

\([1] [2,3] [4]\),貢獻為\(1*4=4\)

\([1] [2] [3,4]\),貢獻為\(1*4=4\)

\([1,2] [3] [4]\),貢獻為\(2*4=8\)

可以證明數學期望為\(5.333333...\)

對於第二問我們透過計算機擬合發現是\(16\)

對於\(100\%\)的資料,保證\(3\le n \le 2\times 10^6\)\(-1000\le a_i \le 1000\)\(0<k\le 5\times 10^5\)

本題開啟SPJ,輸出答案與正確答案誤差不超過\(10^{-4}\)即可透過。