#1166. 简单数学题

简单数学题

代码 此题数据

题目描述

数学老师布置了一道计算题。给定长度为 nn 的正整数数列 A1,A2,…,AnA_1,A_2,\ldots,A_n,请依次求出每个前缀的和、平均数和方差。

对于每个 1≤i≤n1\le i\le n,需要计算:

  1. 和 Si=∑j=1iAjS_i=\sum_{j=1}^{i}A_j。
  2. 平均数 Bi=1i∑j=1iAjB_i=\frac{1}{i}\sum_{j=1}^{i}A_j。
  3. 方差 Vi=1i∑j=1i(Aj−Bi)2V_i=\frac{1}{i}\sum_{j=1}^{i}(A_j-B_i)^2。

所有结果都要精确输出。结果是整数时直接输出整数,否则输出最简分数。

输入格式

从文件 t1.in 读入数据。

第一行一个整数 nn,表示数列长度。

第二行 nn 个整数 A1,A2,…,AnA_1,A_2,\ldots,A_n。

输出格式

输出到文件 t1.out。

输出 nn 行,第 ii 行依次输出 Si,Bi,ViS_i,B_i,V_i,相邻结果用一个空格隔开。

若结果是整数,直接输出该整数,包括 00;否则输出 a/b,其中 a,ba,b 为互质的正整数,斜杠两侧不加空格。

样例 1 输入

5
1 7 2 3 8

样例 1 输出

1 1 0
8 4 9
10 10/3 62/9
13 13/4 83/16
21 21/5 194/25

样例 1 解释

前两个数是 1,71,7,和为 88,平均数为 44,方差为 (1−4)2+(7−4)22=9\frac{(1-4)^2+(7-4)^2}{2}=9。

样例 2

见选手目录下的 t1/t12.in 与 t1/t12.ans。

该组样例满足 n≤5000n\le5000。

数据范围与测试点

对于全部数据,1≤n≤1051\le n\le10^5,1≤Ai≤10001\le A_i\le1000。

共 20 个测试点,每点 5 分,各点独立计分。

测试点 nn 的上限 AiA_i 的上限 分值
1∼61\sim6 1010 30
7∼147\sim14 50005000 10001000 40
15∼2015\sim20 10510^5 30

统计

相关

在下列比赛中:

第五套