#P5358. [SDOI2019] 快速查询
[SDOI2019] 快速查询
题目描述
给定一个长度为 的整数数列,里面的元素依次编号为 。初始的时候,所有元素都为零。现在按照时间顺序提供了若干次关于这个数列的修改或询问,每一次修改或询问一定为以下六种情况之一:
-
1 i val :将 赋值为给定整数 ;
-
2 val :将所有元素同时加上 ;
-
3 val :将所有元素同时乘上 ;
-
4 val :将所有元素同时赋值为 ;
-
5 i :询问第 个元素 现在的值是多少;
-
6 :询问现在所有元素的和。
输入格式
为了避免读入太大,输入文件采取如下的形式。
第一行给定整数 ,表示给定数列长度为 。 第二行给定整数 ,并且之后的 行,每一行提供一个修改或询问,输入的格式与题目所述一致,请参见样例。 我们称上述给定的修改或询问为标准操作。 之后给定一个整数 ,并且之后的 行每行给定两个正整数 和 ,这里的下标 依次记为 到 。
你需要对初始值全为零的长度为 的序列做总计 次操作。 其中第 次操作形如第 个给定的标准操作( 且 )。
输出格式
输出一个整数,表示所有询问答案的累计和。
因为答案可能很大,只要求输出其结果关于 取模后的值。
注意:若最终的累计和 ans 小于零,你应该输出 。
7
28
6
4 -192321079
3 418379342
1 3 189801569
3 -840249197
4 -751917965
3 649799919
1 5 -92666141
6
4 451258008
5 1
4 696880327
3 772574465
6
4 301010289
3 480168068
5 3
5 2
4 840536237
5 5
5 4
1 7 -792284106
2 604521872
3 966540578
2 -381646699
3 -939378260
2 -20129935
6
2
0 1
197 199
2816930
提示
子任务:(分), 且 ,所有在输入中出现的 满足,所有和满足
子任务:(分), 且 ,所有在输入中出现的 满足,所有和满足