Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- using ll = long long;
- using ld = long double;
- using ull = unsigned long long;
- const int N = 1e5 + 5;
- const int Inf = 1e19 + 7;
- int n, m, k;
- int maxn(0), minn(0), cur(0);
- int a[N];
- void Read()
- {
- cin >> n >> m >> k;
- while (m--)
- {
- int v;
- cin >> v;
- if (v == 1)
- --cur;
- else
- ++cur;
- minn = min(minn, cur);
- maxn = max(maxn, cur);
- }
- for (int i = 1; i <= k; ++i)
- cin >> a[i];
- a[0] = 0;
- a[k + 1] = n + 1;
- }
- void Solve()
- {
- int ans(0);
- for (int i = 1; i <= k + 1; ++i)
- ans += max(0, a[i] - maxn - 1 - (a[i - 1] + abs(minn) + 1) + 1);
- cout << ans;
- }
- int32_t main()
- {
- ios::sync_with_stdio(0);
- cin.tie(0);
- cout.tie(0);
- Read();
- Solve();
- }
RAW Paste Data