#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
pair<int,int> a[n];
for(int i=0;i<n;i++)cin>>a[i].first;
for(int i=0;i<n;i++)cin>>a[i].second;
int q;
cin>>q;
while(q--){
int l,r;
cin>>l>>r;
l--;r--;
vector<pair<int,int>> v;
for(int i=l;i<=r;i++)v.push_back(a[i]);
sort(v.begin(),v.end());
int x=v.size();
bool b=1;
for(int i=v.size()-1;i>-1;i--){
int y=lower_bound(v.begin(),v.end(),make_pair(v[i].second,0))-v.begin();
if(i<x&&i==y){
b=0;
break;
}
x=min(x,y);
}
if(b)cout<<"Yes\n";
else cout<<"No\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... |