#P2442. 分数统计

分数统计

题目背景

大宁考完联赛回来,成功的躲过了期中考试,但是他的班主任 Yellow_sword 不会放过他。

题目描述

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

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

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

输入格式

第一行为两个整数 nnqq,表示有 nn 个班级和 qq 个询问。

第二行为 nn 个整数 aia_i,表示第 ii 个班的平均评价值。

第三行为 nn 个整数 bib_i,表示第 ii 个班的人数。

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

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

输出格式

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

5 3
90 100 90 90 80
2 1 2 1 8
1 1 3
2 3 5
3 1 2

92.00
80
10

提示

测试点 数据规模 时限
131\sim3 n=q=103n=q=10^3 0.5s0.5s
454\sim5 n=q=5×104n=q=5\times 10^4
676\sim 7 n=q=105n=q=10^5 1s1s
8108\sim 10 n=q=2×105n=q=2\times 10^5

建议使用较快的读入方式。