PAT-B 1049 數列的片段和【規律】
PAT-B 1049 數列的片段和
https://pintia.cn/problem-sets/994805260223102976/problems/994805275792359424
題目
給定一個正數數列,我們可以從中擷取任意的連續的幾個數,稱為片段。例如,給定數列 { 0.1, 0.2, 0.3, 0.4 },我們有 (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。
輸入
輸入第一行給出一個不超過 105 的正整數 N,表示數列中數的個數,第二行給出 N 個不超過 1.0 的正數,是數列中的數,其間以空格分隔。
輸出
在一行中輸出該序列所有片段包含的數之和,精確到小數點後 2 位。
樣例輸入
4
0.1 0.2 0.3 0.4
樣例輸出
5.00
分析
規律題,易知元素i被加的次數等它前面的元素個數(包含它)乘以它後面的元素個數(包含它),注意程式開始這樣寫的ans+=a[i]*(i*(n-i+1)),即先讓計算 i*(n-i+1),當i取某些值時結果會超過int的表示範圍,會溢位。因此需要進行強制型別轉換,或者按照現在的程式這樣寫,具體看程式。
C++程式
#include<iostream>
using namespace std;
const int N=100005;
double a[N];
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%lf",&a[i]);
double ans=0;
for(int i=1;i<=n;i++)
ans+=a[i]*i*(n-i+1);//元素i要被加 i*(n-i+1)次
printf("%.2lf\n",ans);
return 0;
}
相關文章
- PAT-B 1056 組合數的和【規律】
- PAT-B 1003 我要通過!【規律+字串】字串
- ●連續質數2.3.5.7.11.13.17.19的規律●(9)
- ●連續質數2.3.5.7.11.13.17.19的規律●(6)
- ●連續質數2.3.5.7.11.13.17.19的規律●(5)
- ●連續質數2.3.5.7.11.13.17.19的規律●(4)
- ●連續質數2.3.5.7.11.13.17.19的規律●(3)
- ●連續質數2.3.5.7.11.13.17.19的規律●(10)
- ●連續質數2.3.5.7.11.13.17.19的規律●(1)
- ●連續質數2.3.5.7.11.13.17.19的規律●(2)
- ●連續質數2.3.5.7.11.13.17.19的規律●(15)
- ●連續質數2.3.5.7.11.13.17.19的規律●(16)
- ●連續質數2.3.5.7.11.13.17.19的規律●(11)
- ●連續質數2.3.5.7.11.13.17.19的規律●(13)
- ●連續質數2.3.5.7.11.13.17.19的規律●(8)
- ●連續質數2.3.5.7.11.13.17.19的規律●(7)
- ●連續質數2.3.5.7.11.13.17.19的規律●(12)
- ●連續質數2.3.5.7.11.13.17.19的規律●(14)
- PAT-B 1030 完美數列【二分】
- PAT-B 1084 外觀數列 【模擬】
- PAT-B 1019 數字黑洞【陣列+模擬】陣列
- 雙指標查詢陣列的連續規律子陣列問題指標陣列
- python3 中 and 和 or 運算規律Python
- 打表找規律
- 如何探索事物的客觀規律?
- jQuery的沒落和技術發展的一般規律jQuery
- PAT-B 1092 最好吃的月餅【陣列】陣列
- PAT-B 1083 是否存在相等的差【陣列】陣列
- PAT-B 1013 數素數 【素數】
- 規律推薦_『最簡單定下期和值方法』∂
- 智慧手機增長規律,掌握在少數人手裡
- leedcode-單詞規律
- 三、凸透鏡成像規律
- LeetCode-單詞規律LeetCode
- PAT-B 1064 朋友數
- HDU 1792 - A New Change Problem(規律,最大不能組合數及其個數)
- 軟體開發的常見認知規律和原則 - Reflectoring
- Python裡的引用與拷貝規律Python