题目背景 quad小C最近迷恋上了下棋,他十分喜爱这款游戏,但是在几天的玩耍之后,他发现他的水平停滞在了白银分段,他现在想要通过一些方式来提升他的下棋水平,现在,他遇到了一个问题想要请求你的帮助, 题目描述 quad首先,他手上最开始有n nn个英雄,他们的初始攻击力是Ai A_iAi,并且这些英雄一字型排开,他能够对与[l,r][ l,r][l,r]区间的英雄进行如下两种操作: 1. 将[l,r
题目背景 quad小C最近迷恋上了下棋,他十分喜爱这款游戏,但是在几天的玩耍之后,他发现他的水平停滞在了白银分段,他现在想要通过一些方式来提升他的下棋水平,现在,他遇到了一个问题想要请求你的帮助。 题目描述 quad首先,他手上最开始有 n n n个英雄,他们的初始攻击力是 Ai A_i Ai,并且这些英雄一字型排开,他能够对与[ l,r][ l,r][ l,r]区间的英雄进行如下两种操作: 1. 将 [l,r] [l,r] [l,r]区间的英雄攻击力每个加上 k k k 2. 将 [l,r] [l,r] [l,r]区间的英雄攻击力每个乘上 k k k 3. 将 [l,r] [l,r] [l,r]区间的英雄攻击力置为 k k k 4. 在最后一个英雄后添加一个一个攻击力为 x x x的英雄 quad因为他想要在任意时刻知道任意区间英雄的攻击力总和,所以请你实现一个能够在线查找 [l,r] [l,r] [l,r]区间的数据结构,使得他能够随时得知 [l,r] [l,r] [l,r]区间英雄的攻击力总和。 quad这里,游戏有一个特殊的地方,就是英雄的攻击力过高时,会将该英雄的攻击力对 p p p取模,希望你能够注意。