【洛谷八连测R6】yanQval-透明的星尘

题目描述

做出艰难的抉择之后,Okabe和Mayuri背负了kurisu的牺牲继续生活。

Mayuri有 $n$ 颗星星,每颗星星都有一个明亮度 $A_{i}$ 。Mayuri时常想知道一个区间 $[l,r]$ 内所有星星的明亮度的总和是多少。但是星星是会眨眼的,所以星星的明亮度是会变化的。有的时候,下标为y,y+x,y+2x,y+3x.....y+kx的星星的明亮度会增加z。保证$yleq x$。

Mayuri不怎么会数学,请回答她的询问。答案要对 $10^{9}+7$ 取模。

输入输出格式

输入格式:

第一行两个整数 $n$ 和 $m$,分别表示星星的数量和操作的数量。

接下来一行 $n$ 个数字 $A_{i}$,表示初始的明亮度。

接下来 $m$ 行,每行先是一个整数表示操作类型,如果为1则是修改操作,接下来3个整数 $x,y,z$;如果是2则为询问操作,接下来两个整数 $l,r$。

输出格式:

对于每个询问操作,输出一行表示答案。

输入输出样例

输入样例#1: 复制
5 6
1 2 3 4 5
2 2 4
1 1 1 1
2 2 4
2 1 3
1 2 1 2
2 1 3
输出样例#1: 复制
9
12
9
13

说明

对于20%,满足$n,mleq 1000$

对于另外20%,满足$x>1000$

对于另外20%,满足$x>300$

对于另外20%,满足$n,m leq 100000$

对于100%,$n,mleq 200000,1leq yleq xleq n,1leq lleq rleq n,0leq Ai,z leq 10^{9}+7$

代码

欢迎转载,转载请注明出处!
原文地址:https://www.cnblogs.com/huihao/p/7751626.html