美文网首页
B1049 数列的片段和 (20分)

B1049 数列的片段和 (20分)

作者: km15 | 来源:发表于2020-02-08 16:46 被阅读0次

/*
题意:
1、给出一个不超过N的5次,第二行给出不超过1.0的正数,
2、找出所有的片段,计算出所有的片段和

本质:不用去找片段和啦

解题:
1、怎么计算和呢
2、规律是啥呀!
3、从 n递减到1,从1增加到n,再乘以0.几

learn && wrong:
1、主要是思路没错就可以了
2、但是不知道为什么我读入数组反而错了,答案是直接读入一个数,直接for循环开始算
*/

#include <iostream>
using namespace std;

const int maxn = 100010;
double num_array[maxn];

int main(int argc, char** argv) {
    int n;
    cin>>n; 
    for(int i = 1;i <= n;++i){      //输入序列 
        scanf("%lf",&num_array[i]);
    }
    
    double ans = 0;
    
    for(int i = 1;i <= n;++i){
        ans += (n - i + 1) * i * num_array[i];
    } 
    
    printf("%.2f\n",ans);
    return 0;
}

// B1049 数列的片段和.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <cstdio>
using namespace std;

int main()
{
    int n;
    double vb, ans = 0;
    scanf("%d", &n);
    for (int i = 1;i <= n;i++) {
        scanf("%lf", &vb);//求和啊,每个数出现的次数已经知道了,那就是求和了
        ans += vb * i * (n - i + 1);
    }
    printf("%.02f", ans);
}

相关文章

网友评论

      本文标题:B1049 数列的片段和 (20分)

      本文链接:https://www.haomeiwen.com/subject/gdhixhtx.html