测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A2849. 分数统计

编程题 省选/NOI-

题目描述

大宁考完联赛回来,成功的躲过了期中考试,但是他的班主任 Yellow_sword 不会放过他。Yellow_sword 要大宁给他弄一个数据库,维护班级的考试平均分。每个人期中考试各科的分数已经被统一的转化为评价值,为一个 $[1,100]$ 之间的整数。它评价了这个人的总体水平,现在 Yellow_sword 丢给了大宁 $n$ 个班级的班级平均评价值和每个班的人数,由于 Yellow_sword 和大宁都很懒,所以都假装每个班每个人的评价值就是班级的平均评价值。他想知道:

1. 连续的若干个班所有人评价值的平均数。
2. 连续的若干个班所有人评价值的众数(若有多个取最小的那个众数)。
3. 连续的若干个班所有人评价值的极差(即评价值最高和最低的差)。

既然大家都很懒,那事情就给你来做了。

输入格式

第一行为两个整数 $n$ 和 $q$,表示有 $n$ 个班级和 $q$ 个询问。

第二行为 $n$ 个整数 $a_i$,表示第 $i$ 个班的平均评价值。

第三行为 $n$ 个整数 $b_i$,表示第 $i$ 个班的人数。

接下来 $q$ 行,每行一个查询,格式为:Opt u v

表示在第 $u$ 到 $v$ 个班级里查询 $Opt$ 对应的项,$Opt\in[1,3]$,意义为前文所述。

输出格式

对于每一个询问,在 $q$ 行中输出对应的结果,平均数保留两位小数。

输入输出样例

输入 #1
5 3
90 100 90 90 80
2 1 2 1 8
1 1 3
2 3 5
3 1 2
输出 #1
92.00
80
10

说明/提示

|测试点| 数据规模| 时限 |
| :-------:| :----:| :----: |
| $1\sim3$ |$n=q=10^3$| $0.5s$ |
|$4\sim5$| $n=q=5\times 10^4$| $0.5s$ |
| $6\sim 7$ | $n=q=10^5$| $1s$ |
| $8\sim 10$ | $n=q=2\times 10^5$| $1s$ |

**建议使用较快的读入方式。**
上一题 去做题 下一题