Submission #31537793
Source Code Expand
#include <bits/stdc++.h>
#define sz(c) int(c.size())
#define rep(i, a, b) for (int i = a; i < (b); ++i)
#define per(i, a, b) for (int i = (b)-1; i >= (a); --i)
using namespace std;
using ll = long long;
#ifdef LOCAL
#include <local/debug.h>
#else
#define debug(...) (void)0
#endif
int main() {
cin.tie(nullptr);
ios_base::sync_with_stdio(false);
int n;
cin >> n;
vector<int> a(n), b(n);
rep(i, 0, n) cin >> a[i];
rep(i, 0, n) cin >> b[i];
map<int, int> s;
array<int, 4> cnt{};
auto add = [&](int x, int y) {
int pre = s[x];
int cur = pre | y;
if (cur != pre) {
cnt[pre]--;
cnt[cur]++;
s[x] = cur;
}
};
int p = 0, q = 0;
add(a[p++], 1);
add(b[q++], 2);
vector<pair<pair<int, int>, pair<int, int>>> seg;
while (true) {
if (cnt[1] + cnt[2] == 0) {
int p1 = p, q1 = q;
while (p < n && s.count(a[p]))
p++;
while (q < n && s.count(b[q]))
q++;
seg.emplace_back(make_pair(p1, p), make_pair(q1, q));
if (p == n && q == n)
break;
if (p < n)
add(a[p++], 1);
if (q < n)
add(b[q++], 2);
continue;
}
if (cnt[1] != 0) {
if (q == n)
break;
add(b[q++], 2);
continue;
}
assert(cnt[2] != 0);
if (p == n)
break;
add(a[p++], 1);
}
using pii = pair<int, int>;
map<int, pair<pii, pii>> f;
for (auto it : seg)
f[it.first.first] = it;
int Q;
cin >> Q;
while (Q--) {
int x, y;
cin >> x >> y;
auto check = [&]() {
auto it = f.upper_bound(x);
if (it == f.begin())
return false;
it--;
auto [p1, p2] = it->second;
assert(p1.first <= x);
return x <= p1.second && p2.first <= y && y <= p2.second;
};
cout << (check() ? "Yes" : "No") << '\n';
}
}
Submission Info
| Submission Time |
|
| Task |
E - Prefix Equality |
| User |
ami |
| Language |
C++ (GCC 9.2.1) |
| Score |
500 |
| Code Size |
1920 Byte |
| Status |
AC |
| Exec Time |
220 ms |
| Memory |
14220 KiB |
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
500 / 500 |
| Status |
|
|
| Set Name |
Test Cases |
| Sample |
00_sample_00.txt |
| All |
00_sample_00.txt, 01_one_00.txt, 01_one_01.txt, 02_smallN_00.txt, 02_smallN_01.txt, 03_rnd_00.txt, 03_rnd_01.txt, 04_normal_00.txt, 04_normal_01.txt, 04_normal_02.txt, 04_normal_03.txt, 04_normal_04.txt, 04_normal_05.txt, 05_largexy_00.txt, 05_largexy_01.txt, 05_largexy_02.txt, 05_largexy_03.txt, 05_largexy_04.txt, 05_largexy_05.txt, 06_rev_00.txt, 07_distinct_00.txt, 08_sumhack_00.txt, 08_sumhack_01.txt, 08_sumhack_02.txt, 09_smallval_00.txt, 09_smallval_01.txt, 09_smallval_02.txt, 09_smallval_03.txt, 09_smallval_04.txt, 09_smallval_05.txt, 09_smallval_06.txt, 09_smallval_07.txt, 09_smallval_08.txt, 09_smallval_09.txt |
| Case Name |
Status |
Exec Time |
Memory |
| 00_sample_00.txt |
AC |
11 ms |
3520 KiB |
| 01_one_00.txt |
AC |
2 ms |
3488 KiB |
| 01_one_01.txt |
AC |
2 ms |
3548 KiB |
| 02_smallN_00.txt |
AC |
41 ms |
3576 KiB |
| 02_smallN_01.txt |
AC |
37 ms |
3524 KiB |
| 03_rnd_00.txt |
AC |
135 ms |
10800 KiB |
| 03_rnd_01.txt |
AC |
135 ms |
10472 KiB |
| 04_normal_00.txt |
AC |
130 ms |
5948 KiB |
| 04_normal_01.txt |
AC |
134 ms |
5880 KiB |
| 04_normal_02.txt |
AC |
99 ms |
4672 KiB |
| 04_normal_03.txt |
AC |
97 ms |
4592 KiB |
| 04_normal_04.txt |
AC |
88 ms |
4668 KiB |
| 04_normal_05.txt |
AC |
88 ms |
4720 KiB |
| 05_largexy_00.txt |
AC |
130 ms |
5804 KiB |
| 05_largexy_01.txt |
AC |
129 ms |
5884 KiB |
| 05_largexy_02.txt |
AC |
98 ms |
4672 KiB |
| 05_largexy_03.txt |
AC |
93 ms |
4628 KiB |
| 05_largexy_04.txt |
AC |
87 ms |
4684 KiB |
| 05_largexy_05.txt |
AC |
86 ms |
4728 KiB |
| 06_rev_00.txt |
AC |
220 ms |
14220 KiB |
| 07_distinct_00.txt |
AC |
155 ms |
14220 KiB |
| 08_sumhack_00.txt |
AC |
69 ms |
4688 KiB |
| 08_sumhack_01.txt |
AC |
68 ms |
4672 KiB |
| 08_sumhack_02.txt |
AC |
63 ms |
4600 KiB |
| 09_smallval_00.txt |
AC |
82 ms |
4704 KiB |
| 09_smallval_01.txt |
AC |
80 ms |
4668 KiB |
| 09_smallval_02.txt |
AC |
79 ms |
4672 KiB |
| 09_smallval_03.txt |
AC |
78 ms |
4732 KiB |
| 09_smallval_04.txt |
AC |
78 ms |
4628 KiB |
| 09_smallval_05.txt |
AC |
79 ms |
4680 KiB |
| 09_smallval_06.txt |
AC |
80 ms |
4664 KiB |
| 09_smallval_07.txt |
AC |
79 ms |
4628 KiB |
| 09_smallval_08.txt |
AC |
78 ms |
4628 KiB |
| 09_smallval_09.txt |
AC |
80 ms |
4692 KiB |