1049 數列的片段和 20

2021-10-25 08:43:59 字數 689 閱讀 2395

原題:

思路:

1. a                               = a

2. a+(a+2b) = 2a+2b

3. a+(a+2b)+(a+2b+3c) = 3a+4b+3c

4. a+(a+2b)+(a+2b+3c)+(a+2b+3c+4d) = 4a+6b+6c+4d

左邊的規律顯而易見, 累加即可. 右邊的規律我參考了網友的實現, 才明白.

比如現在n=4, i=1,4a = a * n-i+1 * i, 後面的類推.

本題我最鬱悶的就是使用累加的方案, 測試點2始終無法ac, 估計是精度的原因

但我實在看不出, 精度怎麼錯了, 如有大神明白, 望告知, 不勝感激!

累乘實現1 (ac):

#include int main (void) 

printf("%.2f\n", sum);

return 0;

}

累加實現2 (測試點2不過):

#include int main (void) 

printf("%.2f\n", sum);

return 0;

}

1049 數列的片段和 20

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 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個片段。給定正整數數列,求出全部片段包含的所有...

1049 數列的片段和 20

給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 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個片段。給定正整數數列,求出全部片段包含的所有...

1049 數列的片段和 20

時間限制 200 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 cao,peng 給定乙個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列,我們有 0.1 0.1,0.2 0.1,0.2,0.3 0.1,0.2,0.3,0.4 0...