CF896E Welcome home, Chtholly
题目描述
> ——我……我活下来了。
>
> ——欢迎回家,珂朵莉。
>
> ——我履行了我的承诺……
>
> ——我做到了……我真的做到了!
在经过几天的战斗后,珂朵莉·诺塔·瑟尼欧里斯奇迹般地从激烈的战斗中归来。
正如承诺的那样,威廉正在为她烤黄油蛋糕。
然而,尽管威廉擅长制作甜点,但他很少烤黄油蛋糕。
这次,威廉犯了一个大错——他不小心弄坏了烤箱!
幸运的是,珂朵莉决定帮助他。
威廉把 $n$ 个蛋糕放在一起,蛋糕编号从 $1$ 到 $n$ ,第 $i$ 个蛋糕需要烘烤 $a _ i$ 秒。
威廉需要珂朵莉做 $m$ 个操作来烘烤这些蛋糕。
操作 1:$1\ l\ r\ x$
威廉要求珂朵莉检查范围 $[l, r]$ 内的每个蛋糕,如果蛋糕需要烘烤超过 $x$ 秒,他将其烘烤 $x$ 秒,然后再放回原处。更确切地说,对于范围 $[l, r]$ 内的每个 $i$ ,如果 $a _ i$ 严格大于 $x$ ,则 $a _ i$ 变为 $a _ i - x$。
操作 2:$2\ l\ r\ x$
威廉要求珂朵莉计算范围 $[l, r]$ 内需要恰好烘烤 $x$ 秒的蛋糕数量。更形式化地,你应该找到范围 $[l, r]$ 内有多少个 $i$ 满足 $a _ i = x$。
输入格式
第一行包含两个整数 $n$ 和 $m$($1 \le n, m \le 10 ^ 5$)。
第二行包含 $n$ 个整数,第 $i$ 个是 $a _ i$($1 \le a _ i \le 10 ^ 5$)。
接下来的 $m$ 行是上述的 $m$ 个操作。保证 $1 \le l \le r \le n$ 且 $1 \le x \le 10 ^ 5$。
输出格式
对于每个操作 2,打印答案。
---
Translated by User 735713.