답안 #520464

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
520464 2022-01-30T05:47:57 Z KoD Diversity (CEOI21_diversity) C++17
64 / 100
7000 ms 144224 KB
#include <bits/stdc++.h>

using std::vector;
using std::array;
using std::pair;
using std::tuple;

using i64 = std::int64_t;

constexpr int B = 1000;
constexpr int MAX = 300000;

constexpr i64 sum_k(const int n) {
    return (i64)n * (n + 1) / 2;
}
 
constexpr i64 sum_k2(const int n) {
    return (i64)n * (n + 1) * (2 * n + 1) / 6;
}

int main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int N, Q;
    std::cin >> N >> Q;
    vector<int> A(N);
    for (auto& x : A) {
        std::cin >> x;
        x -= 1;
    }
    const int G = N / B;
    vector precalc(G + 1, vector<vector<pair<int, int>>>(G + 1));
    for (int lc = 0; lc < G; ++lc) {
        vector<char> appear(MAX);
        vector<int> count(MAX);
        for (int rc = lc + 1; rc <= G; ++rc) {
            vector<int> remove, add;
            for (int i = B * (rc - 1); i < B * rc; ++i) {
                if (!appear[A[i]]) {
                    appear[A[i]] = true;
                    if (count[A[i]] > 0) {
                        remove.push_back(count[A[i]]);
                    }
                    add.push_back(A[i]);
                }
                count[A[i]] += 1;
            }
            for (auto& x : add) {
                appear[x] = false;
                x = count[x];
            }
            std::sort(remove.begin(), remove.end());
            std::sort(add.begin(), add.end());
            const auto& read = precalc[lc][rc - 1];
            auto& write = precalc[lc][rc];
            const int A = read.size(), B = remove.size(), C = add.size();
            int i = 0, j = 0, k = 0;
            while (i < A or k < C) {
                int val = MAX;
                if (i < A) {
                    val = std::min(val, read[i].first);
                }
                if (k < C) {
                    val = std::min(val, add[k]);
                }
                int cnt = 0;
                if (i < A and val == read[i].first) {
                    cnt += read[i].second;
                    i += 1;
                }
                while (j < B and val == remove[j]) {
                    j += 1;
                    cnt -= 1;
                }
                while (k < C and val == add[k]) {
                    k += 1;
                    cnt += 1;
                }
                if (cnt > 0) {
                    write.emplace_back(val, cnt);
                }
            }
        }
    }
    vector<vector<int>> idx(MAX);
    for (int i = 0; i < N; ++i) {
        idx[A[i]].push_back(i);
    }
    const auto range_count = [&](const int l, const int r, const int x) {
        const auto& v = idx[x];
        return std::lower_bound(v.begin(), v.end(), r) - std::lower_bound(v.begin(), v.end(), l);
    };
    vector<char> appear(MAX);
    vector<int> count(MAX);
    while (Q--) {
        int l, r;
        std::cin >> l >> r;
        l -= 1;
        vector<pair<int, int>> list;
        if (l / B == r / B) {
            vector<int> add;
            for (int i = l; i < r; ++i) {
                if (!appear[A[i]]) {
                    appear[A[i]] = true;
                    add.push_back(A[i]);
                }
                count[A[i]] += 1;
            }
            for (const int x : add) {
                appear[x] = false;
                list.emplace_back(count[x], 1);
                count[x] = 0;
            }
            std::sort(list.begin(), list.end());
        } else {
            const int lc = (l + B - 1) / B;
            const int rc = r / B;
            assert(lc <= rc);
            vector<int> remove, add, seen;
            for (int i = l; i < B * lc; ++i) {
                if (!appear[A[i]]) {
                    appear[A[i]] = true;
                    const int tmp = range_count(B * lc, B * rc, A[i]);
                    if (tmp > 0) {
                        remove.push_back(tmp);
                    }
                    add.push_back(range_count(l, r, A[i]));
                    seen.push_back(A[i]);
                }
            } 
            for (int i = B * rc; i < r; ++i) {
                if (!appear[A[i]]) {
                    appear[A[i]] = true;
                    const int tmp = range_count(B * lc, B * rc, A[i]);
                    if (tmp > 0) {
                        remove.push_back(tmp);
                    }
                    add.push_back(range_count(l, r, A[i]));
                    seen.push_back(A[i]);
                }
            } 
            for (const int x : seen) {
                appear[x] = false;
            }
            std::sort(remove.begin(), remove.end());
            std::sort(add.begin(), add.end());
            const auto& read = precalc[lc][rc];
            const int A = read.size(), B = remove.size(), C = add.size();
            int i = 0, j = 0, k = 0;
            while (i < A or k < C) {
                int val = MAX;
                if (i < A) {
                    val = std::min(val, read[i].first);
                }
                if (k < C) {
                    val = std::min(val, add[k]);
                }
                int cnt = 0;
                if (i < A and val == read[i].first) {
                    cnt += read[i].second;
                    i += 1;
                }
                while (j < B and val == remove[j]) {
                    j += 1;
                    cnt -= 1;
                }
                while (k < C and val == add[k]) {
                    k += 1;
                    cnt += 1;
                }
                if (cnt > 0) {
                    list.emplace_back(val, cnt);
                }
            }
        }
        const int len = r - l;
        i64 ans = sum_k(len);
        const auto add_to = [&](const i64 s, const int a, const int n) {
            ans += (n * s + sum_k(n) * a) * len;
            ans -= n * s * s + 2 * s * sum_k(n) * a + sum_k2(n) * a * a;
        };
        int left = 0, right = 0;
        for (const auto& [a, b] : list) {
            assert(a > 0 and b > 0);
            if (left > right) {
                std::swap(left, right);
            }
            const int need = std::min(b, (right - left + a - 1) / a);
            const int to_left = need + (b - need) / 2;
            const int to_right = b - to_left;
            add_to(left, a, to_left);
            add_to(right, a, to_right);
            left += a * to_left;
            right += a * to_right;
        }
        ans -= (i64)left * (len - left);
        std::cout << ans << '\n';
    }
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8780 KB Output is correct
2 Correct 4 ms 8780 KB Output is correct
3 Correct 4 ms 8780 KB Output is correct
4 Correct 5 ms 8780 KB Output is correct
5 Correct 4 ms 8780 KB Output is correct
6 Correct 4 ms 8780 KB Output is correct
7 Correct 4 ms 8780 KB Output is correct
8 Correct 4 ms 8780 KB Output is correct
9 Correct 4 ms 8780 KB Output is correct
10 Correct 4 ms 8780 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 8780 KB Output is correct
2 Correct 4 ms 8848 KB Output is correct
3 Correct 7 ms 10000 KB Output is correct
4 Correct 34 ms 11328 KB Output is correct
5 Correct 105 ms 14840 KB Output is correct
6 Correct 220 ms 20420 KB Output is correct
7 Correct 218 ms 20204 KB Output is correct
8 Correct 221 ms 20484 KB Output is correct
9 Correct 226 ms 20056 KB Output is correct
10 Correct 219 ms 20128 KB Output is correct
11 Correct 221 ms 20068 KB Output is correct
12 Correct 220 ms 20288 KB Output is correct
13 Correct 220 ms 20232 KB Output is correct
14 Correct 223 ms 20412 KB Output is correct
15 Correct 222 ms 20228 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 8780 KB Output is correct
2 Correct 4 ms 8848 KB Output is correct
3 Correct 7 ms 10000 KB Output is correct
4 Correct 34 ms 11328 KB Output is correct
5 Correct 105 ms 14840 KB Output is correct
6 Correct 220 ms 20420 KB Output is correct
7 Correct 218 ms 20204 KB Output is correct
8 Correct 221 ms 20484 KB Output is correct
9 Correct 226 ms 20056 KB Output is correct
10 Correct 219 ms 20128 KB Output is correct
11 Correct 221 ms 20068 KB Output is correct
12 Correct 220 ms 20288 KB Output is correct
13 Correct 220 ms 20232 KB Output is correct
14 Correct 223 ms 20412 KB Output is correct
15 Correct 222 ms 20228 KB Output is correct
16 Correct 4 ms 8780 KB Output is correct
17 Correct 5 ms 8848 KB Output is correct
18 Correct 6 ms 9992 KB Output is correct
19 Correct 41 ms 11844 KB Output is correct
20 Correct 126 ms 17308 KB Output is correct
21 Correct 264 ms 25772 KB Output is correct
22 Correct 265 ms 25984 KB Output is correct
23 Correct 275 ms 25828 KB Output is correct
24 Correct 276 ms 26040 KB Output is correct
25 Correct 263 ms 25876 KB Output is correct
26 Correct 269 ms 25728 KB Output is correct
27 Correct 274 ms 25812 KB Output is correct
28 Correct 264 ms 25984 KB Output is correct
29 Correct 261 ms 25928 KB Output is correct
30 Correct 296 ms 25860 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 8780 KB Output is correct
2 Correct 4 ms 8848 KB Output is correct
3 Correct 7 ms 10000 KB Output is correct
4 Correct 34 ms 11328 KB Output is correct
5 Correct 105 ms 14840 KB Output is correct
6 Correct 220 ms 20420 KB Output is correct
7 Correct 218 ms 20204 KB Output is correct
8 Correct 221 ms 20484 KB Output is correct
9 Correct 226 ms 20056 KB Output is correct
10 Correct 219 ms 20128 KB Output is correct
11 Correct 221 ms 20068 KB Output is correct
12 Correct 220 ms 20288 KB Output is correct
13 Correct 220 ms 20232 KB Output is correct
14 Correct 223 ms 20412 KB Output is correct
15 Correct 222 ms 20228 KB Output is correct
16 Correct 4 ms 8780 KB Output is correct
17 Correct 5 ms 8848 KB Output is correct
18 Correct 6 ms 9992 KB Output is correct
19 Correct 41 ms 11844 KB Output is correct
20 Correct 126 ms 17308 KB Output is correct
21 Correct 264 ms 25772 KB Output is correct
22 Correct 265 ms 25984 KB Output is correct
23 Correct 275 ms 25828 KB Output is correct
24 Correct 276 ms 26040 KB Output is correct
25 Correct 263 ms 25876 KB Output is correct
26 Correct 269 ms 25728 KB Output is correct
27 Correct 274 ms 25812 KB Output is correct
28 Correct 264 ms 25984 KB Output is correct
29 Correct 261 ms 25928 KB Output is correct
30 Correct 296 ms 25860 KB Output is correct
31 Correct 6 ms 8816 KB Output is correct
32 Correct 6 ms 8848 KB Output is correct
33 Correct 5 ms 8848 KB Output is correct
34 Correct 8 ms 10000 KB Output is correct
35 Correct 8 ms 10060 KB Output is correct
36 Correct 9 ms 10032 KB Output is correct
37 Correct 57 ms 11748 KB Output is correct
38 Correct 71 ms 11324 KB Output is correct
39 Correct 276 ms 17604 KB Output is correct
40 Correct 1130 ms 58764 KB Output is correct
41 Correct 2647 ms 143400 KB Output is correct
42 Correct 2605 ms 142576 KB Output is correct
43 Correct 2583 ms 143852 KB Output is correct
44 Correct 2588 ms 142952 KB Output is correct
45 Correct 2594 ms 143548 KB Output is correct
46 Correct 2641 ms 142712 KB Output is correct
47 Correct 2647 ms 143028 KB Output is correct
48 Correct 2608 ms 143080 KB Output is correct
49 Correct 2607 ms 142876 KB Output is correct
50 Correct 2586 ms 144224 KB Output is correct
51 Correct 2626 ms 142772 KB Output is correct
52 Correct 2589 ms 142624 KB Output is correct
53 Correct 2550 ms 143636 KB Output is correct
54 Correct 2585 ms 142872 KB Output is correct
55 Correct 2593 ms 143228 KB Output is correct
56 Correct 2624 ms 142316 KB Output is correct
57 Correct 2598 ms 142028 KB Output is correct
58 Correct 2613 ms 143700 KB Output is correct
59 Correct 2592 ms 143020 KB Output is correct
60 Correct 2619 ms 143184 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8780 KB Output is correct
2 Correct 4 ms 8780 KB Output is correct
3 Correct 4 ms 8780 KB Output is correct
4 Correct 5 ms 8780 KB Output is correct
5 Correct 4 ms 8780 KB Output is correct
6 Correct 4 ms 8780 KB Output is correct
7 Correct 4 ms 8780 KB Output is correct
8 Correct 4 ms 8780 KB Output is correct
9 Correct 4 ms 8780 KB Output is correct
10 Correct 4 ms 8780 KB Output is correct
11 Correct 5 ms 8780 KB Output is correct
12 Correct 4 ms 8848 KB Output is correct
13 Correct 7 ms 10000 KB Output is correct
14 Correct 34 ms 11328 KB Output is correct
15 Correct 105 ms 14840 KB Output is correct
16 Correct 220 ms 20420 KB Output is correct
17 Correct 218 ms 20204 KB Output is correct
18 Correct 221 ms 20484 KB Output is correct
19 Correct 226 ms 20056 KB Output is correct
20 Correct 219 ms 20128 KB Output is correct
21 Correct 221 ms 20068 KB Output is correct
22 Correct 220 ms 20288 KB Output is correct
23 Correct 220 ms 20232 KB Output is correct
24 Correct 223 ms 20412 KB Output is correct
25 Correct 222 ms 20228 KB Output is correct
26 Correct 4 ms 8780 KB Output is correct
27 Correct 5 ms 8848 KB Output is correct
28 Correct 6 ms 9992 KB Output is correct
29 Correct 41 ms 11844 KB Output is correct
30 Correct 126 ms 17308 KB Output is correct
31 Correct 264 ms 25772 KB Output is correct
32 Correct 265 ms 25984 KB Output is correct
33 Correct 275 ms 25828 KB Output is correct
34 Correct 276 ms 26040 KB Output is correct
35 Correct 263 ms 25876 KB Output is correct
36 Correct 269 ms 25728 KB Output is correct
37 Correct 274 ms 25812 KB Output is correct
38 Correct 264 ms 25984 KB Output is correct
39 Correct 261 ms 25928 KB Output is correct
40 Correct 296 ms 25860 KB Output is correct
41 Correct 6 ms 8816 KB Output is correct
42 Correct 6 ms 8848 KB Output is correct
43 Correct 5 ms 8848 KB Output is correct
44 Correct 8 ms 10000 KB Output is correct
45 Correct 8 ms 10060 KB Output is correct
46 Correct 9 ms 10032 KB Output is correct
47 Correct 57 ms 11748 KB Output is correct
48 Correct 71 ms 11324 KB Output is correct
49 Correct 276 ms 17604 KB Output is correct
50 Correct 1130 ms 58764 KB Output is correct
51 Correct 2647 ms 143400 KB Output is correct
52 Correct 2605 ms 142576 KB Output is correct
53 Correct 2583 ms 143852 KB Output is correct
54 Correct 2588 ms 142952 KB Output is correct
55 Correct 2594 ms 143548 KB Output is correct
56 Correct 2641 ms 142712 KB Output is correct
57 Correct 2647 ms 143028 KB Output is correct
58 Correct 2608 ms 143080 KB Output is correct
59 Correct 2607 ms 142876 KB Output is correct
60 Correct 2586 ms 144224 KB Output is correct
61 Correct 2626 ms 142772 KB Output is correct
62 Correct 2589 ms 142624 KB Output is correct
63 Correct 2550 ms 143636 KB Output is correct
64 Correct 2585 ms 142872 KB Output is correct
65 Correct 2593 ms 143228 KB Output is correct
66 Correct 2624 ms 142316 KB Output is correct
67 Correct 2598 ms 142028 KB Output is correct
68 Correct 2613 ms 143700 KB Output is correct
69 Correct 2592 ms 143020 KB Output is correct
70 Correct 2619 ms 143184 KB Output is correct
71 Correct 80 ms 10976 KB Output is correct
72 Correct 78 ms 10900 KB Output is correct
73 Correct 79 ms 10984 KB Output is correct
74 Correct 79 ms 10912 KB Output is correct
75 Correct 77 ms 10928 KB Output is correct
76 Correct 328 ms 13432 KB Output is correct
77 Correct 322 ms 13384 KB Output is correct
78 Correct 328 ms 13236 KB Output is correct
79 Correct 327 ms 13312 KB Output is correct
80 Correct 321 ms 13352 KB Output is correct
81 Correct 1338 ms 23680 KB Output is correct
82 Correct 1334 ms 23536 KB Output is correct
83 Correct 1347 ms 23620 KB Output is correct
84 Correct 1331 ms 23516 KB Output is correct
85 Correct 1368 ms 24444 KB Output is correct
86 Correct 1221 ms 19324 KB Output is correct
87 Correct 1220 ms 19560 KB Output is correct
88 Correct 1222 ms 18948 KB Output is correct
89 Correct 1248 ms 19288 KB Output is correct
90 Correct 1219 ms 19168 KB Output is correct
91 Correct 2171 ms 22704 KB Output is correct
92 Correct 2174 ms 22588 KB Output is correct
93 Correct 2232 ms 22540 KB Output is correct
94 Correct 2311 ms 22088 KB Output is correct
95 Correct 2156 ms 22628 KB Output is correct
96 Correct 1630 ms 22084 KB Output is correct
97 Correct 1646 ms 22412 KB Output is correct
98 Correct 1634 ms 22020 KB Output is correct
99 Correct 1640 ms 22144 KB Output is correct
100 Correct 1669 ms 22104 KB Output is correct
101 Correct 1654 ms 22156 KB Output is correct
102 Correct 1624 ms 22128 KB Output is correct
103 Correct 1604 ms 22240 KB Output is correct
104 Correct 1628 ms 22384 KB Output is correct
105 Correct 1645 ms 22424 KB Output is correct
106 Correct 1331 ms 22900 KB Output is correct
107 Correct 1324 ms 22732 KB Output is correct
108 Correct 1320 ms 22756 KB Output is correct
109 Correct 1315 ms 22788 KB Output is correct
110 Correct 1330 ms 22716 KB Output is correct
111 Correct 1339 ms 22736 KB Output is correct
112 Correct 1360 ms 22688 KB Output is correct
113 Correct 1339 ms 22972 KB Output is correct
114 Correct 1335 ms 22720 KB Output is correct
115 Correct 1317 ms 22788 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8780 KB Output is correct
2 Correct 4 ms 8780 KB Output is correct
3 Correct 4 ms 8780 KB Output is correct
4 Correct 5 ms 8780 KB Output is correct
5 Correct 4 ms 8780 KB Output is correct
6 Correct 4 ms 8780 KB Output is correct
7 Correct 4 ms 8780 KB Output is correct
8 Correct 4 ms 8780 KB Output is correct
9 Correct 4 ms 8780 KB Output is correct
10 Correct 4 ms 8780 KB Output is correct
11 Correct 5 ms 8780 KB Output is correct
12 Correct 4 ms 8848 KB Output is correct
13 Correct 7 ms 10000 KB Output is correct
14 Correct 34 ms 11328 KB Output is correct
15 Correct 105 ms 14840 KB Output is correct
16 Correct 220 ms 20420 KB Output is correct
17 Correct 218 ms 20204 KB Output is correct
18 Correct 221 ms 20484 KB Output is correct
19 Correct 226 ms 20056 KB Output is correct
20 Correct 219 ms 20128 KB Output is correct
21 Correct 221 ms 20068 KB Output is correct
22 Correct 220 ms 20288 KB Output is correct
23 Correct 220 ms 20232 KB Output is correct
24 Correct 223 ms 20412 KB Output is correct
25 Correct 222 ms 20228 KB Output is correct
26 Correct 4 ms 8780 KB Output is correct
27 Correct 5 ms 8848 KB Output is correct
28 Correct 6 ms 9992 KB Output is correct
29 Correct 41 ms 11844 KB Output is correct
30 Correct 126 ms 17308 KB Output is correct
31 Correct 264 ms 25772 KB Output is correct
32 Correct 265 ms 25984 KB Output is correct
33 Correct 275 ms 25828 KB Output is correct
34 Correct 276 ms 26040 KB Output is correct
35 Correct 263 ms 25876 KB Output is correct
36 Correct 269 ms 25728 KB Output is correct
37 Correct 274 ms 25812 KB Output is correct
38 Correct 264 ms 25984 KB Output is correct
39 Correct 261 ms 25928 KB Output is correct
40 Correct 296 ms 25860 KB Output is correct
41 Correct 6 ms 8816 KB Output is correct
42 Correct 6 ms 8848 KB Output is correct
43 Correct 5 ms 8848 KB Output is correct
44 Correct 8 ms 10000 KB Output is correct
45 Correct 8 ms 10060 KB Output is correct
46 Correct 9 ms 10032 KB Output is correct
47 Correct 57 ms 11748 KB Output is correct
48 Correct 71 ms 11324 KB Output is correct
49 Correct 276 ms 17604 KB Output is correct
50 Correct 1130 ms 58764 KB Output is correct
51 Correct 2647 ms 143400 KB Output is correct
52 Correct 2605 ms 142576 KB Output is correct
53 Correct 2583 ms 143852 KB Output is correct
54 Correct 2588 ms 142952 KB Output is correct
55 Correct 2594 ms 143548 KB Output is correct
56 Correct 2641 ms 142712 KB Output is correct
57 Correct 2647 ms 143028 KB Output is correct
58 Correct 2608 ms 143080 KB Output is correct
59 Correct 2607 ms 142876 KB Output is correct
60 Correct 2586 ms 144224 KB Output is correct
61 Correct 2626 ms 142772 KB Output is correct
62 Correct 2589 ms 142624 KB Output is correct
63 Correct 2550 ms 143636 KB Output is correct
64 Correct 2585 ms 142872 KB Output is correct
65 Correct 2593 ms 143228 KB Output is correct
66 Correct 2624 ms 142316 KB Output is correct
67 Correct 2598 ms 142028 KB Output is correct
68 Correct 2613 ms 143700 KB Output is correct
69 Correct 2592 ms 143020 KB Output is correct
70 Correct 2619 ms 143184 KB Output is correct
71 Correct 80 ms 10976 KB Output is correct
72 Correct 78 ms 10900 KB Output is correct
73 Correct 79 ms 10984 KB Output is correct
74 Correct 79 ms 10912 KB Output is correct
75 Correct 77 ms 10928 KB Output is correct
76 Correct 328 ms 13432 KB Output is correct
77 Correct 322 ms 13384 KB Output is correct
78 Correct 328 ms 13236 KB Output is correct
79 Correct 327 ms 13312 KB Output is correct
80 Correct 321 ms 13352 KB Output is correct
81 Correct 1338 ms 23680 KB Output is correct
82 Correct 1334 ms 23536 KB Output is correct
83 Correct 1347 ms 23620 KB Output is correct
84 Correct 1331 ms 23516 KB Output is correct
85 Correct 1368 ms 24444 KB Output is correct
86 Correct 1221 ms 19324 KB Output is correct
87 Correct 1220 ms 19560 KB Output is correct
88 Correct 1222 ms 18948 KB Output is correct
89 Correct 1248 ms 19288 KB Output is correct
90 Correct 1219 ms 19168 KB Output is correct
91 Correct 2171 ms 22704 KB Output is correct
92 Correct 2174 ms 22588 KB Output is correct
93 Correct 2232 ms 22540 KB Output is correct
94 Correct 2311 ms 22088 KB Output is correct
95 Correct 2156 ms 22628 KB Output is correct
96 Correct 1630 ms 22084 KB Output is correct
97 Correct 1646 ms 22412 KB Output is correct
98 Correct 1634 ms 22020 KB Output is correct
99 Correct 1640 ms 22144 KB Output is correct
100 Correct 1669 ms 22104 KB Output is correct
101 Correct 1654 ms 22156 KB Output is correct
102 Correct 1624 ms 22128 KB Output is correct
103 Correct 1604 ms 22240 KB Output is correct
104 Correct 1628 ms 22384 KB Output is correct
105 Correct 1645 ms 22424 KB Output is correct
106 Correct 1331 ms 22900 KB Output is correct
107 Correct 1324 ms 22732 KB Output is correct
108 Correct 1320 ms 22756 KB Output is correct
109 Correct 1315 ms 22788 KB Output is correct
110 Correct 1330 ms 22716 KB Output is correct
111 Correct 1339 ms 22736 KB Output is correct
112 Correct 1360 ms 22688 KB Output is correct
113 Correct 1339 ms 22972 KB Output is correct
114 Correct 1335 ms 22720 KB Output is correct
115 Correct 1317 ms 22788 KB Output is correct
116 Correct 700 ms 10508 KB Output is correct
117 Correct 1097 ms 11068 KB Output is correct
118 Correct 1455 ms 12840 KB Output is correct
119 Correct 4035 ms 13064 KB Output is correct
120 Correct 5357 ms 12584 KB Output is correct
121 Correct 6240 ms 19520 KB Output is correct
122 Execution timed out 7082 ms 17388 KB Time limit exceeded
123 Halted 0 ms 0 KB -