- Time limit: 1.50 s
- Memory limit: 128 MB
- muuta kohdan $k$ arvoksi $x$
- laske, montako kertaa luku $x$ esiintyy välillä $a \ldots b$
Syötteen ensimmäisellä rivillä on kaksi kokonaislukua $n$ ja $m$: taulukon koko ja operaatioiden määrä.
Seuraavalla rivillä on $n$ lukua $t_1,t_2,\ldots,t_n$: taulukon sisältö aluksi.
Lopuksi syötteessä on $m$ riviä, joista jokainen kuvaa yhden operaation.
Jos operaatio on tyyppiä 1, rivillä on luvut 1, $k$ ja $x$. Jos operaatio on tyyppiä 2, rivillä on luvut 2, $a$, $b$ ja $x$.
Tuloste
Tulosta vastaus jokaiseen tyypin 2 operaatioon omalle rivilleen.
Rajat
- $1 \le n,m \le 10^5$
- $1 \le t_i \le 10^9$
- $1 \le k \le n$
- $1 \le x \le 10^9$
- $1 \le a \le b \le n$
Syöte:
8 3
2 3 2 5 4 2 3 2
2 3 6 2
1 4 2
2 3 6 2
Tuloste:
2
3