你知道怎麼算出 n 個數的平均值嗎?
很好,我就知道你一定會算。但是,對我來說平均值還不夠用,我需要的是「超級平均值」。
「什麼是『超級平均值』?」 我就知道你會問這個問題。
有 n 個數字排成「非遞減」數列,依序算出相鄰兩數的平均值,於是我們會得到一個含有 n-1 個數字的新數列。重複這個步驟直到只剩下一個數字,這個數字就是我要的─「超級平均值」。
我自己寫了個程式要來計算超級平均值,但是程式跑起來速度太慢了 :(
可以麻煩您幫我個忙嗎?
Input
輸入的第一列有一個整數,代表以下有多少組測試資料。接下來,每組測試資料的第一列含有一個整數 n ( 0 < n <= 50000 ),代表數列中數字的數目。接下來的一列含有 n 個數以「非遞減」順序出現,這些數字的值均介於 -1000 到 1000之間。請參考Sample Input。
Output
對每一組測試資料輸出一列。先輸出這是第幾組測試資料,再輸出該組數列的「超級平均值」到小數第3位。詳細格式請參考 Sample Output。
| Sample Input | Sample Output |
5 5 1 2 3 4 5 1 10.4 2 1.0 2.2 3 1 2 3 3 -1 -3 -9 |
Case #1: 3.000 Case #2: 10.400 Case #3: 1.600 Case #4: 2.000 Case #5: -4.000 |
Translated by Latinboy