`
Kingson_Wu
  • 浏览: 119576 次
文章分类
社区版块
存档分类
最新评论

前缀平均值

 
阅读更多
10345 前缀平均值
时间限制:3000MS 内存限制:65535K 提交次数:0 通过次数:0
语言: not limited
描述
数列的前缀平均值(prefix average)问题:
给定存储n个double型浮点数的数组X,要计算数组A,其中A[i]为元素X[0],…, X[i]的平均值(i=0,…,n-1)(1<=n<=1000000),即
前缀平均值在经济学和统计学中广泛应用。
例如,给定一个基金的年回报,投资者想要知道前一年、前三年、前五年以及前十年奖金的年度平均回报。
前缀平均值还可以用作某一快速变化的参数的“平滑”函数。
已知长度为n的X[i]序列(i=0,…,n-1),求长度为n的前缀平均值序列A[i] (i=0,…,n-1)。试设计一种求前缀平均值的算法,使得算法的平均运行时间为O(n)。
注意:这里,要求设计的算法运行时间是O(n),而非直接通过公式计算的O(n^2)。 2
输入格式
分两行:
第一行仅一个数,为n,表示接下来有n个浮点数。
第二行共有n个double型浮点数,为原始数X[0] … X[n-1]
输出格式
仅一行共有n个平均值,为前缀平均值A[0] … A[n-1]
格式:每个数值仅保留小数点后两位输出,数值之间空格相连。
输入样例
3
0.125126 56.3585 19.3304
输出样例
0.13 28.24 25.27

3


--------------------------------------------

10345前缀平均值(一般方法)

#include<stdio.h>

#include<malloc.h>

intmain()

{

intn,i;

double*X,*A,*B;

scanf("%d",&n);

X=(double*)malloc(n*sizeof(double));

A=(double*)malloc(n*sizeof(double));

B=(double*)malloc(n*sizeof(double));

for(i=0;i<n;i++)

{

scanf("%lf",&X[i]);

}

A[0]=B[0]=X[0];

for(i=1;i<n;i++)

{

B[i]=X[i]+B[i-1];

A[i]=B[i]/(i+1);

}

for(i=0;i<n;i++)

{

printf("%0.2f",A[i]);

}

return0;

}


分享到:
评论

相关推荐

    电信设备-减小移动台发射功率的蜂值与平均值功率比的装置和方法.zip

    标题和描述提到的"电信设备-减小移动台发射功率的蜂值与平均值功率比的装置和方法"是一个针对这一问题的具体解决方案,其主要目标是优化移动通信设备的功率输出,减少峰均功率比(PAPR,Peak-to-Average Power Ratio...

    西南交通大学作业4-报告再不交就来不及了

    7. **测试用例**:为了验证算法的正确性,我们通常会设计不同的测试用例,例如,测试用例1包含5个元素,子区间长度为2,初始的平均值是3.000,但后续计算会发现更优的子序列平均值为2.5。 总的来说,这个作业旨在...

    MD5选择前缀碰撞算法的改进及复杂度分析.docx

    综上所述,通过结合NAF技术、改进概率值的推导以及引入新的消息差分,研究团队成功地提出了一种改进的MD5选择前缀碰撞算法。这种方法不仅降低了算法的复杂度,还改善了复杂度分布的失衡问题,使得改进后的算法更加...

    微机原理与接口技术

    **题目一**:编写程序,统计`BUF`数据区中有符号字节数的平均值。 - **程序思路**: - 初始化累加器AX为0。 - 使用`LEA SI, BUF1`指令让SI指向`BUF1`数组的起始地址。 - 设置循环计数器CX为数组的长度。 - 在...

    C#控件命名规范,数据类型命名规范等...

    11. **Short(短整数)**: 推荐使用前缀`shr`,例如:`shrAverage`表示平均值的短整数型变量。 12. **Single(单精度浮点数)**: 使用前缀`sng`,例如:`sngMaximum`表示最大值的单精度浮点数。 13. **String(字符...

    计科班(软工)-作业62

    `x` 的更新使用了 `(x + a[i] - Math.abs(x - a[i])) / 2` 表达式,这个表达式实际上是取 `x` 和 `a[i]` 的平均值,但由于 `Math.abs` 的存在,如果 `x` 大于 `a[i]`,则会偏向 `a[i]`;反之,如果 `x` 小于 `a[i]`...

    8086汇编语言指令

    7. 字符串操作指令:这类指令专门用于处理字符串数据,包括重复前缀指令,如`REP`,可以与`MOVSB`、`STOSB`等指令配合使用,以提高字符串操作的效率。 在实际应用中,8086汇编语言的程序设计需要对这些指令有深入的...

    北邮2009复试上机题目

    这个题目要求计算一组分数的平均值,但要去掉其中的最大值和最小值。首先,我们需要读取两个整数,第一个是分数的数量n,第二个是n个分数的列表。然后,可以使用Python等编程语言的内置函数找到最大值和最小值,将...

    C++基础及其习题

    C++中还定义了一些特殊的命名空间,如std命名空间,用于存放标准库中的类和函数,通常需要使用std::前缀来引用。 整体来看,C++作为一门面向对象的编程语言,提供了强大的功能和丰富的库支持,但同时对编程者的要求...

    汇编实验报告10 数组的使用

    默认情况下,`DS` 用于 `SI` 和 `DI`,`SS` 用于 `BP`,但可以通过段超越前缀指定其他段寄存器。 2. 所有的变量名本质上都是立即数,它们在程序运行时代表内存中的特定位置。 3. 循环结构中,`CX` 通常用作计数器,...

    表达式求值与任务调度

    中缀式到前缀式和后缀式的转换是表达式求值的重要步骤。中缀式可以通过括号和运算符的优先级规则转换为前缀式和后缀式。例如,中缀式表达式“11+22\*(7-4)/3”可以转换为前缀式“/+ 11 \*22 – 7 4 3”和后缀式“22 ...

    C#命名规范

    例如,平均值可以命名为`shrAverage`。 12. **单精度(Single)**: 推荐使用前缀`sng`。例如,最大值可以命名为`sngMaximum`。 13. **字符串(String)**: 推荐使用前缀`str`。例如,姓名字符串可以命名为`strFirstName`...

    关于编程风格的讨论(软件公司软件开发规范)

    // 用来求平均值 // 对数进行累加。 for(lI = 0; lI ; lI++) { lSum = lSum + lI; ... } // 求平均值。 fAvg = lSum / 10.0; ... } ``` 2. **提示信息**:提示信息字符串应当被定义在资源文件中,以便...

    深入解读python的二次移动平均法.docx

    这种方法将二次移动平均法转化为卷积的形式,使用 cumsum() 函数计算前缀和,然后通过切片的方式计算窗口内的平均值。 二次移动平均法的应用场景 二次移动平均法有多种应用场景,包括: * 数据平滑:可以通过二次...

    Word怎样计算每页平均字数.docx

    3. 在这对大括号内输入`= /`,这表示我们将进行除法运算,计算总字数除以总页数以得到平均值。 4. 将光标置于等号和斜杠之间,再次按下`Ctrl + F9`,在现有大括号内嵌套另一对大括号。 5. 在第一个内部的大括号中...

    函数应用之数据库函数-secret.docx

    3. **基础函数关联**:去掉D前缀后,很多数据库函数与Excel的其他函数功能相似,如`DAVERAGE`对应于`AVERAGE`,用于计算平均值。 ### 二、数据库函数列表 Excel中的数据库函数包括但不限于以下几种:`DAVERAGE`、`...

    DelayChecker服务器网络延迟测试对比工具

    2 打开DelayChecker.exe,即可检查上一步配置的服务器连接网络状态,平均延迟代表该连接延迟平均值,最大最小延迟和丢包率则可判断网络连接状态。一般来讲,平均延迟最低,最大最小延迟差最小,丢包率为0的连接状态...

    东北师范大学C程序设计(高起专)(离线考核).doc

    空白处(3)应填入读取输入并存储到数组的代码,(4)初始化`sum`,(5)累加数组元素,(6)计算平均值并赋值给`avg`。 3. 文件操作: - 题目要求创建并写入一个文件。空白处(7)定义文件指针`fp`,(8)打开...

    电子表格Excel函数教程.doc

    函数允许用户执行各种复杂的数据分析,包括但不限于求和、平均值计算,还能处理日期和时间、进行财务计算、逻辑判断、文本操作,甚至构建统计管理和小型数据库系统。 在Excel中,函数可以嵌套,这意味着一个函数...

    Excel 函数应用

    例如,嵌套的AVERAGE函数可以用于计算一组数据的平均值,然后根据这个平均值与其他值进行比较。函数的结构通常包括函数名、左圆括号、逗号分隔的参数和右圆括号,前缀等号表示这是一个公式。 使用Excel函数的步骤...

Global site tag (gtag.js) - Google Analytics