107072024-04-10 09:43:34szilTelefonközpontcpp17Elfogadva 100/100128ms7432 KiB
#include <bits/stdc++.h>

using namespace std;
using ll = long long;

const int MAXN = 300'001;

int pref[MAXN], a[MAXN], tree[2*MAXN], n, m, q;

void upd(int u, int k) {
    tree[u += m] = k;
    for (u /= 2; u >= 1; u /= 2) {
        tree[u] = max(tree[2*u], tree[2*u+1]);
    }
}

int qry(int l, int r) {
    int res = 0; l += m; r += m;
    while (l <= r) {
        if (l % 2 == 1) res = max(res, tree[l++]);
        if (r % 2 == 0) res = max(res, tree[r--]);
        l /= 2; r /= 2;
    }
    return res;
}

int main() {
    ios::sync_with_stdio(0); cin.tie(0);
    cin >> m >> n >> q;
    for (int i = 1; i <= n; i++) {
        int l, r; cin >> l >> r;
        pref[l]++;
        pref[r+1]--;
    }
    for (int i = 1; i <= m; i++) {
        pref[i] += pref[i-1];
        upd(i, pref[i]);
    }
    while (q--) {
        int l, r; cin >> l >> r;
        cout << qry(l, r) << "\n";
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1900 KiB
2Elfogadva3ms2108 KiB
subtask220/20
3Elfogadva3ms2304 KiB
4Elfogadva3ms2648 KiB
5Elfogadva3ms2604 KiB
6Elfogadva3ms2688 KiB
7Elfogadva3ms2860 KiB
8Elfogadva3ms2940 KiB
9Elfogadva3ms3024 KiB
subtask320/20
10Elfogadva3ms2304 KiB
11Elfogadva3ms2648 KiB
12Elfogadva3ms2604 KiB
13Elfogadva3ms2688 KiB
14Elfogadva3ms2860 KiB
15Elfogadva3ms2940 KiB
16Elfogadva3ms3024 KiB
17Elfogadva4ms3332 KiB
18Elfogadva4ms3284 KiB
19Elfogadva4ms3316 KiB
20Elfogadva4ms3280 KiB
21Elfogadva4ms3280 KiB
22Elfogadva4ms3284 KiB
23Elfogadva4ms3292 KiB
subtask460/60
24Elfogadva3ms2304 KiB
25Elfogadva3ms2648 KiB
26Elfogadva3ms2604 KiB
27Elfogadva3ms2688 KiB
28Elfogadva3ms2860 KiB
29Elfogadva3ms2940 KiB
30Elfogadva3ms3024 KiB
31Elfogadva4ms3332 KiB
32Elfogadva4ms3284 KiB
33Elfogadva4ms3316 KiB
34Elfogadva4ms3280 KiB
35Elfogadva4ms3280 KiB
36Elfogadva4ms3284 KiB
37Elfogadva4ms3292 KiB
38Elfogadva128ms6884 KiB
39Elfogadva127ms6900 KiB
40Elfogadva125ms7100 KiB
41Elfogadva123ms7212 KiB
42Elfogadva123ms7432 KiB
43Elfogadva123ms7424 KiB
44Elfogadva123ms7432 KiB