4947 | 2023. 04. 07 18:30:27 | TomaSajt | Színes szobák (50 pont) | cpp17 | Elfogadva 50/50 | 29ms | 6384 KiB |
#include <bits/stdc++.h>
using namespace std;
// shamelessly "inspired by" (stolen) solution from SleepyOverlord on njudge
int main() {
cin.tie(0), cin.sync_with_stdio(0);
int n, k, m;
cin >> n >> k >> m;
vector<int> pos_color(n + 2);
for (int i = 1; i <= n; i++)
cin >> pos_color[i];
vector<array<int, 2>> rqueries(m);
for (int i = m - 1; i >= 0; i--)
cin >> rqueries[i][0] >> rqueries[i][1];
// calculates in reverse what was the position of the people
// who reached their respective side last
int left_pos = 0, right_pos = n + 1;
for (auto &[c, x] : rqueries) {
if (x == -1 && c == pos_color[left_pos + 1])
left_pos++;
if (x == 1 && c == pos_color[left_pos])
left_pos--;
if (x == 1 && c == pos_color[right_pos - 1])
right_pos--;
if (x == -1 && c == pos_color[right_pos])
right_pos++;
}
cout << left_pos + (n + 1 - right_pos);
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1824 KiB | |||
2 | Elfogadva | 0/0 | 29ms | 4400 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2380 KiB | |||
4 | Elfogadva | 1/1 | 3ms | 2584 KiB | |||
5 | Elfogadva | 1/1 | 3ms | 2792 KiB | |||
6 | Elfogadva | 1/1 | 3ms | 2644 KiB | |||
7 | Elfogadva | 1/1 | 3ms | 2644 KiB | |||
8 | Elfogadva | 1/1 | 3ms | 2900 KiB | |||
9 | Elfogadva | 1/1 | 3ms | 2996 KiB | |||
10 | Elfogadva | 1/1 | 3ms | 3356 KiB | |||
11 | Elfogadva | 1/1 | 3ms | 3444 KiB | |||
12 | Elfogadva | 1/1 | 3ms | 3636 KiB | |||
13 | Elfogadva | 1/1 | 4ms | 3792 KiB | |||
14 | Elfogadva | 1/1 | 4ms | 3732 KiB | |||
15 | Elfogadva | 1/1 | 4ms | 4048 KiB | |||
16 | Elfogadva | 1/1 | 4ms | 4292 KiB | |||
17 | Elfogadva | 1/1 | 4ms | 4232 KiB | |||
18 | Elfogadva | 1/1 | 4ms | 4380 KiB | |||
19 | Elfogadva | 1/1 | 18ms | 5196 KiB | |||
20 | Elfogadva | 1/1 | 29ms | 6232 KiB | |||
21 | Elfogadva | 1/1 | 21ms | 5716 KiB | |||
22 | Elfogadva | 1/1 | 24ms | 5724 KiB | |||
23 | Elfogadva | 1/1 | 28ms | 5848 KiB | |||
24 | Elfogadva | 1/1 | 29ms | 6244 KiB | |||
25 | Elfogadva | 1/1 | 29ms | 6240 KiB | |||
26 | Elfogadva | 1/1 | 29ms | 6240 KiB | |||
27 | Elfogadva | 3/3 | 28ms | 6372 KiB | |||
28 | Elfogadva | 3/3 | 28ms | 6384 KiB | |||
29 | Elfogadva | 3/3 | 28ms | 6384 KiB | |||
30 | Elfogadva | 3/3 | 28ms | 6384 KiB | |||
31 | Elfogadva | 3/3 | 28ms | 6384 KiB | |||
32 | Elfogadva | 3/3 | 28ms | 6384 KiB | |||
33 | Elfogadva | 4/4 | 16ms | 4952 KiB | |||
34 | Elfogadva | 4/4 | 25ms | 5860 KiB |