题目描述
Frank 对天文学非常感兴趣,他经常用望远镜看星星,同时记录下它们的信息,比如亮度、颜色等等,进而估算出星星的距离,半径等等。
Frank 不仅喜欢观测,还喜欢分析观测到的数据。他经常分析两个参数之间(比如亮度和半径)是否存在某种关系。
现在 Frank 要分析参数 X 与 Y 之间的关系。他有 n 组观测数据,第 i 组观测数据记录了 xi 和 yi。他需要一下几种操作。
1 L R
用直线拟合第 L 组到第 R 组观测数据。用 x 表示这些观测数据中 x 的平均数,用 y 表示这些观测数据中 y 的平均数,即
xy=R−L+11i=L∑Rxi=R−L+11i=L∑Ryi如果直线方程是 y=ax+b,那么 a 应当这样计算:
a=i=L∑R(xi−x)2i=L∑R(xi−x)(yi−y)你需要帮助 Frank 计算 a。
2 L R S T
Frank 发现测量数据第 L 组到第 R 组数据有误差,对每个 i 满足 L≤i≤R,xi 需要加上 S,yi 需要加上 T。
3 L R S T
Frank 发现第 L 组到第 R 组数据需要修改,对于每个 i 满足 L≤i≤R,xi 需要修改为 (S+i),yi 需要修改为 (T+i)。
输入格式
第一行两个数 n,m,表示观测数据组数和操作次数。
接下来一行 n 个数,第 i 个数是 xi。
接下来一行 n 个数,第 i 个数是 yi。
接下来 m 行,表示操作,格式见题目描述。
输出格式
对于每个 1 操作,输出一行,表示直线斜率 a。选手输出与标准输出的绝对误差或相对误差不超过 10−5 即为正确。
提示
数据范围及约定
- 对于 20% 的数据 1≤n,m≤1000;
- 另有 20% 的数据,没有 3 操作,且 2 操作中 S=0;
- 另有 30% 的数据,没有 3 操作。
对于 100% 的数据,1≤n,m≤105,0≤∣S∣,∣T∣≤105,0≤∣xi∣,∣yi∣≤105。
保证 1 操作不会出现分母为 0 的情况。