There are
bells arranged in a line, labelled
to
. The
bell has a frequency of
Hz
. There are
operations to perform.
There are two types of operations:
1 i f
Replace thebell with one with a frequency of
Hz.
2 l r
Output the number of distinct frequencies between theand
bell (inclusive).
There will be at most distinct frequencies at a time.
Fast input may be required.
Constraints
For 10% of the points, .
For 90% of the points, .
Input Specification
The first line contains two space separated integers,
, respectively the number of bells and the number of queries.
The next line contains space separated integers, the frequency of the bells.
The next lines each contain a query in the format described above.
Output Specification
Output a single integer on its own line for each type 2 query.
Sample Input 1
6 3
1 2 1 4 4 2
2 1 6
1 2 1
2 1 3
Sample Output 1
3
1
Sample Output 1 Explanation
In the beginning, there are only 3 distinct frequencies which the bells have, 1 Hz, 2 Hz, and 4 Hz. After switching the second bell with one with a frequency of 1 Hz. There is only one distinct frequency among the first 3 bells.
Comments
Submissions have been redjudged. New test cases were added.
I apologize for the inconvenience.
No bells are labeled 0 and there is no 0th bell, but some inputs have 0 as the bell number. I realized this because it keeps giving me "index out of bound" error. For the operations, I added if(index==0){index=1;} and it worked.
Thank you for pointing this out. Will be fixed soon.
EDIT: Issue has been fixed