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