#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;
pii seg[4*maxn];
int lzy[4*maxn];
void prop(int v){
    if(lzy[v]){
        seg[2*v+1]={lzy[v],lzy[v]};
        lzy[2*v+1]=lzy[v];
        seg[2*v+2]={lzy[v],lzy[v]};
        lzy[2*v+2]=lzy[v];
        lzy[v]=0;
    }
}
pii mrg(pii p1,pii p2){
    return {min(p1.fs,p2.fs),max(p1.sc,p2.sc)};
}
pii upd(int v,int l,int r,int l2,int r2,int x,int y){
    if(l2>r||r2<l||seg[v].sc<x)return seg[v];
    if(l2<=l&&r<=r2&&seg[v].fs>=x){
        lzy[v]=y;
        return seg[v]={y,y};
    }
    prop(v);
    int m=(l+r)/2;
    return seg[v]=mrg(upd(2*v+1,l,m,l2,r2,x,y),upd(2*v+2,m+1,r,l2,r2,x,y));
}
pii upd2(int v,int l,int r,int x,int y){
    if(x<l||x>r)return seg[v];
    if(l==r)return seg[v]={y,y};
    prop(v);
    int m=(l+r)/2;
    return seg[v]=mrg(upd2(2*v+1,l,m,x,y),upd2(2*v+2,m+1,r,x,y));
}
int get(int v,int l,int r,int i){
    if(l==r)return seg[v].fs;
    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];
    for(int i=0;i<q;i++){
        int l,r;
        cin>>l>>r;
        qry[r].pb({l,i});
    }
    for(int i=0;i<4*maxn;i++)seg[i]={-1,-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... |