Dynamic Range Minimum Test

View as PDF

Submit solution

Points: 12
Time limit: 0.15s
Java 0.5s
PyPy 2 2.5s
PyPy 3 2.5s
Python 2 4.0s
Python 3 4.0s
Memory limit: 8M
PyPy 2 128M
PyPy 3 128M
Python 2 64M
Python 3 64M

Problem type

Perform the dynamic range minimum query.

Input Specification

The first line of input will contain two space-separated integers: N (1N100000), the number of elements in the array, and M (1M100000), the number of operations to perform.

The next N lines each contain one non-negative integer less than 1000000. Specifically, line number i will contain element i2 of the array. Note that the array has zero-based indexing.

The following M lines contain one operation each. Each operation is either of the form M i x, indicating that element number i (0i<N) is to be changed to x (0x<1000000), or the form Q i j (0ij<N) indicating that your program is to find the minimum value of the elements in the index range [i,j] (that is, inclusive) in the current state of the array and print this value to standard output.

Output Specification

One integer, on its own line, for each Q statement: the answer to the query.

Sample Input

Copy
5 10
35232
390942
649675
224475
18709
Q 1 3
M 4 475689
Q 2 3
Q 1 3
Q 1 2
Q 3 3
Q 2 3
M 2 645514
M 2 680746
Q 0 4

Sample Output

Copy
224475
224475
224475
390942
224475
224475
35232

Comments

There are no comments at the moment.