Type: RemoteJudge 3000ms 256MiB

Kazaee

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

Description

You have an array $a$ consisting of $n$ positive integers and you have to handle $q$ queries of the following types:

  • $1$ $i$ $x$: change $a_{i}$ to $x$,
  • $2$ $l$ $r$ $k$: check if the number of occurrences of every positive integer in the subarray $a_{l}, a_{l+1}, \ldots a_{r}$ is a multiple of $k$ (check the example for better understanding).

The first line of the input contains two integers $n$ and $q$ ($1 \le n , q \le 3 \cdot 10^5$), the length of $a$ and the number of queries.

Next line contains $n$ integers $a_{1}, a_{2}, \ldots a_{n}$ ($1 \le a_{i} \le 10^9$) — the elements of $a$.

Each of the next $q$ lines describes a query. It has one of the following forms.

  • $1$ $i$ $x$, ($1 \le i \le n$ , $1 \le x \le 10^9$), or
  • $2$ $l$ $r$ $k$, ($1 \le l \le r \le n$ , $1 \le k \le n$).

For each query of the second type, if answer of the query is yes, print "YES", otherwise print "NO".

Input

The first line of the input contains two integers $n$ and $q$ ($1 \le n , q \le 3 \cdot 10^5$), the length of $a$ and the number of queries.

Next line contains $n$ integers $a_{1}, a_{2}, \ldots a_{n}$ ($1 \le a_{i} \le 10^9$) — the elements of $a$.

Each of the next $q$ lines describes a query. It has one of the following forms.

  • $1$ $i$ $x$, ($1 \le i \le n$ , $1 \le x \le 10^9$), or
  • $2$ $l$ $r$ $k$, ($1 \le l \le r \le n$ , $1 \le k \le n$).

Output

For each query of the second type, if answer of the query is yes, print "YES", otherwise print "NO".

10 8
1234 2 3 3 2 1 1 2 3 4
2 1 6 2
1 1 1
2 1 6 2
2 1 9 2
1 10 5
2 1 9 3
1 3 5
2 3 10 2

NO
YES
NO
YES
YES

Note

In the first query, requested subarray is $[1234, 2, 3, 3, 2, 1]$, and it's obvious that the number of occurrence of $1$ isn't divisible by $k = 2$. So the answer is "NO".

In the third query, requested subarray is $[1, 2, 3, 3, 2, 1]$, and it can be seen that the number of occurrence of every integer in this sub array is divisible by $k = 2$. So the answer is "YES".

In the sixth query, requested subarray is $[1, 2, 3, 3, 2, 1, 1, 2, 3]$, and it can be seen that the number of occurrence of every integer in this sub array is divisible by $k = 3$. So the answer is "YES".

数据结构一 by YJL

Not Attended
Status
Done
Rule
ACM/ICPC
Problem
5
Start at
2023-10-17 14:30
End at
2023-10-18 14:30
Duration
24 hour(s)
Host
Partic.
27