题目描述
教主最近学会了一种神奇的魔法,能够使人长高。于是他准备演示给 XMYZ 信息组每个英雄看。于是$N$个英雄们又一次聚集在了一起,这次他们排成了一列,被编号为$1, 2, ldots, N$。
每个人的身高一开始都是不超过$1000$的正整数。教主的魔法每次可以把闭区间$[L, R]$($1 \le L \le R \le N$)内的英雄的身高全部加上一个整数$W$。(虽然$L=R$时并不符合区间的书写规范,但我们可以认为是单独增加第$L(R)$个英雄的身高)
CYZ、光哥和 ZJQ 等人不信教主的邪,于是他们有时候会问 WD 闭区间$[L, R]$内有多少英雄身高大于等于$C$,以验证教主的魔法是否真的有效。
WD 巨懒,于是他把这个回答的任务交给了你。
输入输出格式
输入格式
第$1$行为两个整数$N, Q$。$Q$为问题数与教主的施法数总和。
第$2$行有$N$个正整数,第$i$个数代表第$i$个英雄的身高。
第$3$到第$Q+2$行每行有一个操作:
若第一个字母为
M
,则紧接着有三个数字$L, R, W$。表示对闭区间$[L, R]$内所有英雄的身高加上$W$。若第一个字母为
A
,则紧接着有三个数字$L, R, C$。询问闭区间$[L, R]$内有多少英雄的身高大于等于$C$。
输出格式
对每个 A
询问输出一行,仅含一个整数,表示闭区间$[L, R]$内身高大于等于$C$的英雄数。
输入输出样例
输入样例 #1
5 3
1 2 3 4 5
A 1 5 4
M 3 5 1
A 1 5 4
输出样例 #1
2
3
说明/提示
【输入输出样例说明】
原先$5$个英雄身高为$1, 2, 3, 4, 5$,此时$[1, 5]$间有$2$个英雄的身高大于等于$4$。教主施法后变为$1, 2, 4, 5, 6$,此时$[1, 5]$间有$3$个英雄的身高大于等于$4$。
【数据范围】
对于$30\%$的数据,$N \le 1000$,$Q \le 1000$。
对于$100\%$的数据,$N \le 10^6$,$Q \le 3000$,$1 \le W \le 1000$,$1 \le C \le 10^9$。