Submission details
Task:Dynamic Range Minimum Queries
Sender:aalto26dh_004
Submission time:2026-09-22 21:24:20 +0300
Language:C++ (C++20)
Status:READY
Result:
Test results
testverdicttime
#10.00 sdetails
#20.49 sdetails

Code

#include "iostream"
#include "cmath"
#include "climits"
#include "algorithm"

int main() {
    int n, q;
    std::cin >> n >> q;
    int m = std::sqrt(n);
    int array[n], mins[m + 1];
    for (int i = 0; i < m; i++) {
        for (int j = 0; j < m; j++) {
            std::cin >> array[i * m + j];
        }
        mins[i] = *std::min_element(array + i * m, array + (i + 1) * m);
    }
    int rest = n - m * m;
    for (int i = 0; i < rest; i++) {
        std::cin >> array[m * m + i];
    }
    if (rest) mins[m] = *std::min_element(array + m * m, array + n);
    int queries[3];
    for (int i = 0; i < q; i++) {
        std::cin >> queries[0] >> queries[1] >> queries[2];
        int idx = (queries[1] - 1) / m;
        if (queries[0] == 1) {
            array[queries[1] - 1] = queries[2];
            mins[idx] = *std::min_element(array + idx * m, array + (idx + 1) * m);
        } else {
            std::cout << mins[idx] << std::endl;
        }
    }
}

Test details

Test 1

Verdict:

input
8 80
7 6 4 6 2 9 4 8
2 1 1
2 1 2
2 1 3
...

correct output
7
6
4
4
2
...

user output
6
6
6
6
6
...

Feedback: Incorrect character on line 1 col 1: expected "7", got "6"

Test 2

Verdict:

input
200000 200000
398739055 65343131 699208332 3...

correct output
28609
129890
20378
20378
311522
...

user output
1488049
9302335
40862
553643
2996851
...

Feedback: Incorrect character on line 1 col 1: expected "28609", got "1488049"