#include <bits/stdc++.h>
using namespace std;
#define int long long
#define in(i) cin >> i
#define out(o) cout << o
// vector<int>
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
int N;
in(N);
vector<int> A(N);
vector<int> B(N);
for (int i = 0; i < N; ++i) in(A[i]);
for (int i = 0; i < N; ++i) in(B[i]);
int Q;
in(Q);
for (int i = 0; i < Q; ++i) {
int l, r;
in(l);
in(r);
--l;
--r;
vector<pair<int, int>> sorted;
for (int j = l; j <= r; ++j) sorted.push_back({A[j], B[j]});
sort(sorted.begin(), sorted.end());
int s = sorted.size();
bool can = true;
int minB = 3 * N;
for (int j = s - 1; j >= 0; --j) {
bool satisfied = false;
int a = sorted[j].first;
int b = sorted[j].second;
if (j != s - 1 && a >= minB) satisfied = true;
minB = min(minB, b);
if (j && sorted[j - 1].first >= minB) satisfied = true;
if (!satisfied) can = false;
}
if (can) out("Yes");
else out("No");
out("\n");
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |