95852024-02-23 12:44:09AblablablaSzínes szobák (50 pont)cpp17Elfogadva 50/5086ms6152 KiB
#include <bits/stdc++.h>

using namespace std;

typedef pair<int, int> pii;

int n, k, m;
vector<int> szobak;
vector<pii> kerdesek;

int jo(int akt){
    for(pii x : kerdesek){
        if(szobak[akt] == x.first){
            akt += x.second;
        }

        if(akt == -1){
            return -1;
        } else if(akt == n){
            return 1;
        }
    }
    return 0;
}

int main()
{
    cin >> n >> k >> m;

    szobak.assign(n, 0);
    for(int i = 0; i < n; i++){
        cin >> szobak[i];
    }

    kerdesek.assign(m, {0, 0});
    for(pii &x : kerdesek){
        cin >> x.first >> x.second;
    }

    int balH = -1;
    int l = 0, r = n - 1;
    while(l <= r){
        int mid = (l + r) / 2;

        if(jo(mid) == -1){
            balH = mid;
            l = mid + 1;
        } else{
            r = mid - 1;
        }
    }

    int jobbH = n;
    l = 0;
    r = n - 1;
    while(l <= r){
        int mid = (l + r) / 2;

        if(jo(mid) == 1){
            jobbH = mid;
            r = mid - 1;
        } else{
            l = mid + 1;
        }
    }

    cout << (balH + 1) + (n - jobbH) << "\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1880 KiB
2Elfogadva0/086ms4516 KiB
3Elfogadva1/13ms2348 KiB
4Elfogadva1/13ms2404 KiB
5Elfogadva1/13ms2608 KiB
6Elfogadva1/13ms2836 KiB
7Elfogadva1/13ms2912 KiB
8Elfogadva1/13ms3044 KiB
9Elfogadva1/13ms3272 KiB
10Elfogadva1/14ms3496 KiB
11Elfogadva1/13ms3560 KiB
12Elfogadva1/14ms3552 KiB
13Elfogadva1/18ms3876 KiB
14Elfogadva1/14ms3840 KiB
15Elfogadva1/16ms3784 KiB
16Elfogadva1/18ms3904 KiB
17Elfogadva1/18ms4048 KiB
18Elfogadva1/18ms3984 KiB
19Elfogadva1/150ms5080 KiB
20Elfogadva1/182ms5996 KiB
21Elfogadva1/161ms5084 KiB
22Elfogadva1/167ms5476 KiB
23Elfogadva1/178ms5820 KiB
24Elfogadva1/182ms6000 KiB
25Elfogadva1/182ms6000 KiB
26Elfogadva1/182ms6148 KiB
27Elfogadva3/375ms6000 KiB
28Elfogadva3/375ms6068 KiB
29Elfogadva3/375ms6152 KiB
30Elfogadva3/375ms6068 KiB
31Elfogadva3/375ms5996 KiB
32Elfogadva3/375ms6000 KiB
33Elfogadva4/439ms4568 KiB
34Elfogadva4/464ms5480 KiB