比赛场次 358
比赛名称 数列操作练习题
比赛状态 已结束比赛成绩
开始时间 2017-03-18 19:00:00
结束时间 2017-03-19 23:59:59
开放分组 全部用户
注释介绍 数列操作按顺序做=ω=
祝愿大家颓得好成绩
题目名称 数列操作e
输入输出 rneaty.in/out
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试点数 20 简单对比
用户 结果 时间 内存 得分
Gravatar_Itachi AAAAAAAAAAAAAAAAAAAA
2.463 s 14.79 MiB 100

数列操作e

★★★☆   输入文件:rneaty.in   输出文件:rneaty.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】


一个长度为n的序列,一开始序列数的权值都是0,有m次操作

支持两种操作,

1 L R x,给区间[L,R]内,第一个数加x,第二个数加$2^2\cdot x$,第三个数加$3^2\cdot x$...第R-L+1个数加$(R-L+1)^2\cdot x$

2 L R 查询区间[L,R]内的权值和

每次询问的答案对$2^{64}$取模


【输入格式】


第一行两个数n,m,表示序列长度和操作次数

接下来m行,每行描述一个操作,有如下两种情况:


1 L R x,给区间[L,R]内,第一个数加x,第二个数加$2^2\cdot x$,第三个数加$3^2\cdot x$...第R-L+1个数加$(R-L+1)^2\cdot x$

2 L R 查询区间[L,R]内的权值和


【输出格式】

为了减少输出,你只需要输出所有答案对$2^{64}$取膜之后的异或和。

【样例输入】

5 5

1 3 4 1

2 1 5

2 2 2

1 3 3 1

1 2 4 1

【样例输出】

5

【提示】


对于10%的数据 n,m<=2000

对于30%的数据 n,m<=10000

对于100%的数据,n,m<=100000,1<=L<=R<=n,0<=x<=$10^9$


【来源】

一只名字很长的蒟蒻