9287 | 2024. 02. 19 20:01:57 | UVince | Színes szobák (50 pont) | cpp17 | Elfogadva 50/50 | 41ms | 8788 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 | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1892 KiB | |||
2 | Elfogadva | 0/0 | 41ms | 4460 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2444 KiB | |||
4 | Elfogadva | 1/1 | 3ms | 2524 KiB | |||
5 | Elfogadva | 1/1 | 3ms | 2732 KiB | |||
6 | Elfogadva | 1/1 | 3ms | 2708 KiB | |||
7 | Elfogadva | 1/1 | 3ms | 2708 KiB | |||
8 | Elfogadva | 1/1 | 3ms | 2836 KiB | |||
9 | Elfogadva | 1/1 | 3ms | 2924 KiB | |||
10 | Elfogadva | 1/1 | 3ms | 3204 KiB | |||
11 | Elfogadva | 1/1 | 3ms | 3196 KiB | |||
12 | Elfogadva | 1/1 | 3ms | 3548 KiB | |||
13 | Elfogadva | 1/1 | 4ms | 3572 KiB | |||
14 | Elfogadva | 1/1 | 4ms | 3780 KiB | |||
15 | Elfogadva | 1/1 | 4ms | 3748 KiB | |||
16 | Elfogadva | 1/1 | 6ms | 4068 KiB | |||
17 | Elfogadva | 1/1 | 6ms | 4012 KiB | |||
18 | Elfogadva | 1/1 | 6ms | 4004 KiB | |||
19 | Elfogadva | 1/1 | 24ms | 5224 KiB | |||
20 | Elfogadva | 1/1 | 41ms | 6216 KiB | |||
21 | Elfogadva | 1/1 | 29ms | 5888 KiB | |||
22 | Elfogadva | 1/1 | 32ms | 5892 KiB | |||
23 | Elfogadva | 1/1 | 37ms | 6024 KiB | |||
24 | Elfogadva | 1/1 | 41ms | 6420 KiB | |||
25 | Elfogadva | 1/1 | 41ms | 6424 KiB | |||
26 | Elfogadva | 1/1 | 41ms | 6424 KiB | |||
27 | Elfogadva | 3/3 | 39ms | 6808 KiB | |||
28 | Elfogadva | 3/3 | 39ms | 7192 KiB | |||
29 | Elfogadva | 3/3 | 39ms | 7568 KiB | |||
30 | Elfogadva | 3/3 | 39ms | 7880 KiB | |||
31 | Elfogadva | 3/3 | 39ms | 8260 KiB | |||
32 | Elfogadva | 3/3 | 39ms | 8788 KiB | |||
33 | Elfogadva | 4/4 | 20ms | 7564 KiB | |||
34 | Elfogadva | 4/4 | 34ms | 8596 KiB |