PAT 1049 數列的片段和

2021-10-08 02:26:34 字數 781 閱讀 4190

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列 ,我們有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 這 10 個片段。

給定正整數數列,求出全部片段包含的所有的數之和。如本例中 10 個片段總和是 0.1 + 0.3 + 0.6 + 1.0 + 0.2 + 0.5 + 0.9 + 0.3 + 0.7 + 0.4 = 5.0。

輸入格式:

輸入第一行給出乙個不超過 10^​5的正整數 n,表示數列中數的個數,第二行給出 n 個不超過 1.0 的正數,是數列中的數,其間以空格分隔。

輸出格式:

在一行中輸出該序列所有片段包含的數之和,精確到小數點後 2 位。

輸入樣例:

40.1 0.2 0.3 0.4

輸出樣例:

5.00

分析

看例子中的規律:0.1的出現次數是14,0.2的出現次數的23,0.3的次數是32,0.4的出現次數是41。

#include

#include

using namespace std;

intmain()

printf

("%.2f"

,sum)

;return0;

}

PAT 1049數列的片段和

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 0.1 0.1,0.2 0.1,0.2,0.3 0.1,0.2,0.3,0.4 0.2 0.2,0.3 0.2,0.3,0.4 0.3 0.3,0.4 0.4 這10個片段。給定正整數數列,求出全部片段包含的所有...

PAT 1049 數列的片段和

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 0.1 0.1,0.2 0.1,0.2,0.3 0.1,0.2,0.3,0.4 0.2 0.2,0.3 0.2,0.3,0.4 0.3 0.3,0.4 0.4 這10個片段。給定正整數數列,求出全部片段包含的所有...

PAT 1049 數列的片段和

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 0.1 0.1,0.2 0.1,0.2,0.3 0.1,0.2,0.3,0.4 0.2 0.2,0.3 0.2,0.3,0.4 0.3 0.3,0.4 0.4 這10個片段。給定正整數數列,求出全部片段包含的所有...