CSES - Esiintymät
  • Time limit: 1.50 s
  • Memory limit: 128 MB
Tehtäväsi on toteuttaa taulukkoon seuraavat operaatiot:
  1. muuta kohdan $k$ arvoksi $x$
  2. laske, montako kertaa luku $x$ esiintyy välillä $a \ldots b$
Syöte

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$
Esimerkki

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