#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pll pair<ll, ll>
#define pii pair<int, int>
#define fs first
#define sc second
#define pb push_back
const int maxn=5e5;
int seg[4*maxn];
pii lzy[4*maxn];
pii mrg(pii p1,pii p2){
if(!p1.sc)return p2;
if(p1.sc>=p2.fs)return {min(p1.fs,p2.fs),p2.sc};
return p1;
}
void prop(int v){
if(lzy[v].sc){
lzy[2*v+1]=mrg(lzy[2*v+1],lzy[v]);
lzy[2*v+2]=mrg(lzy[2*v+2],lzy[v]);
lzy[v]={0,0};
}
}
void upd(int v,int l,int r,int l2,int r2,pii p){
if(l>r2||r<l2)return;
if(l2<=l&&r<=r2){
lzy[v]=mrg(lzy[v],p);
return;
}
int m=(l+r)/2;
prop(v);
upd(2*v+1,l,m,l2,r2,p);
upd(2*v+2,m+1,r,l2,r2,p);
}
void upd2(int v,int l,int r,int i,int x){
if(i<l||i>r)return;
if(l==r){
seg[v]=x;
lzy[v]={0,0};
return;
}
int m=(l+r)/2;
prop(v);
upd2(2*v+1,l,m,i,x);
upd2(2*v+2,m+1,r,i,x);
}
int get(int v,int l,int r,int i){
if(l==r){
if(lzy[v].sc&&seg[v]>=lzy[v].fs)seg[v]=lzy[v].sc;
return seg[v];
}
int m=(l+r)/2;
prop(v);
if(i<=m)return get(2*v+1,l,m,i);
return get(2*v+2,m+1,r,i);
}
void solve() {
int n,m,q;
cin>>n>>m>>q;
vector<int> a[n+1];
while(m--){
int l,r;
cin>>l>>r;
a[r].pb(l);
}
int ans[q];
vector<pii> qry[n+1];
bool b=1;
for(int i=0;i<q;i++){
int l,r;
cin>>l>>r;
b&=l==1;
qry[r].pb({l,i});
}
for(int i=0;i<=4*n;i++)seg[i]=-1;
for(int i=1;i<=n;i++){
for(int l:a[i]){
upd2(0,1,n,l,i);
upd(0,1,n,1,l,{l-1,i});
}
for(auto[l,idx]:qry[i]){
ans[idx]=get(0,1,n,l)==i;
}
}
for(int i=0;i<q;i++){
if(ans[i])cout<<"YES\n";
else cout<<"NO\n";
}
}
int main() {
#ifdef FPO
freopen("in","r",stdin);
freopen("out","w",stdout);
#endif
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
solve();
}
# | 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... |