CSES - Esiintymät
  • Time limit: 1.50 s
  • Memory limit: 128 MB

Tehtäväsi on toteuttaa taulukkoon seuraavat operaatiot:

  1. muuta kohdan kk arvoksi xx
  2. laske, montako kertaa luku xx esiintyy välillä aba \ldots b

Syöte

Syötteen ensimmäisellä rivillä on kaksi kokonaislukua nn ja mm: taulukon koko ja operaatioiden määrä.

Seuraavalla rivillä on nn lukua t1,t2,,tnt_1,t_2,\ldots,t_n: taulukon sisältö aluksi.

Lopuksi syötteessä on mm riviä, joista jokainen kuvaa yhden operaation.

Jos operaatio on tyyppiä 1, rivillä on luvut 1, kk ja xx. Jos operaatio on tyyppiä 2, rivillä on luvut 2, aa, bb ja xx.

Tuloste

Tulosta vastaus jokaiseen tyypin 2 operaatioon omalle rivilleen.

Rajat

  • 1n,m1051 \le n,m \le 10^5
  • 1ti1091 \le t_i \le 10^9
  • 1kn1 \le k \le n
  • 1x1091 \le x \le 10^9
  • 1abn1 \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