92872024-02-19 20:01:57UVinceSzínes szobák (50 pont)cpp17Elfogadva 50/5041ms8788 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

vector<int> v;
vector<pair<int, int>> q;

int check(int n)
{
    int side = 0;
    for (auto [c, x] : q)
    {
        if (v[n] == c)
            n += x;
        if (n < 0)
        {
            side = -1;
            break;
        }
        if (n >= v.size())
        {
            side = 1;
            break;
        }
    }
    return side;
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int n, k, m;
    cin >> n >> k >> m;
    v.resize(n);
    q.resize(m);
    for (int i = 0; i < n; i++)
    {
        cin >> v[i];
    }
    for (int i = 0; i < m; i++)
    {
        cin >> q[i].first >> q[i].second;
    }
    int ans = 0;
    int l = -1, r = n;

    while (l + 1 < r)
    {
        int cur = (l + r) / 2;
        int side = check(cur);
        if (side == -1)
        {
            l = cur;
        }
        else
        {
            r = cur;
        }
    }
    ans += l + 1;

    l = -1;
    r = n;
    while (l + 1 < r)
    {
        int cur = (l + r) / 2;
        int side = check(cur);
        if (side == 1)
        {
            r = cur;
        }
        else
        {
            l = cur;
        }
    }
    ans += n - r;
    cout << ans;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1892 KiB
2Elfogadva0/041ms4460 KiB
3Elfogadva1/13ms2444 KiB
4Elfogadva1/13ms2524 KiB
5Elfogadva1/13ms2732 KiB
6Elfogadva1/13ms2708 KiB
7Elfogadva1/13ms2708 KiB
8Elfogadva1/13ms2836 KiB
9Elfogadva1/13ms2924 KiB
10Elfogadva1/13ms3204 KiB
11Elfogadva1/13ms3196 KiB
12Elfogadva1/13ms3548 KiB
13Elfogadva1/14ms3572 KiB
14Elfogadva1/14ms3780 KiB
15Elfogadva1/14ms3748 KiB
16Elfogadva1/16ms4068 KiB
17Elfogadva1/16ms4012 KiB
18Elfogadva1/16ms4004 KiB
19Elfogadva1/124ms5224 KiB
20Elfogadva1/141ms6216 KiB
21Elfogadva1/129ms5888 KiB
22Elfogadva1/132ms5892 KiB
23Elfogadva1/137ms6024 KiB
24Elfogadva1/141ms6420 KiB
25Elfogadva1/141ms6424 KiB
26Elfogadva1/141ms6424 KiB
27Elfogadva3/339ms6808 KiB
28Elfogadva3/339ms7192 KiB
29Elfogadva3/339ms7568 KiB
30Elfogadva3/339ms7880 KiB
31Elfogadva3/339ms8260 KiB
32Elfogadva3/339ms8788 KiB
33Elfogadva4/420ms7564 KiB
34Elfogadva4/434ms8596 KiB