Submission #1303488

#TimeUsernameProblemLanguageResultExecution timeMemory
1303488chaitanyamehtaCurtains (NOI23_curtains)C++20
9 / 100
1594 ms9724 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
    int n , m , q;
    cin>>n>>m>>q;

    vector<pair<int , int>> curt(m);
    vector<pair<int ,int>> query(q);
    for(int i = 0 ; i< m ;i++){
        cin>>curt[i].first >> curt[i].second;
    }
    for(int i = 0 ; i <q ; i++){
        cin>>query[i].first >> query[i].second;
    }
    

    sort(curt.begin() , curt.end());
    for(int i = 0 ; i < q ;i++){
        int st = query[i].first;
        int en = query[i].second;
        vector<int> temp(n +2);
        for(int j = 0; j < m ; j++){
            int curt_st = curt[j].first;
            int curt_en = curt[j].second;

            if(curt_st >= st && curt_en <= en){
                // cout<<curt_st << " " << curt_en<<"\n";
                temp[curt_st]++;
                temp[curt_en + 1]--;
            }
        }
        for(int i = 1 ;i <= n ; i++){
            temp[i] += temp[i-1];
        }
        bool ok = true;
        for(int k = st ; k <= en ; k++){
            if(!temp[k])ok = false;

        }
        if(ok)cout<<"YES"<<"\n";
        else cout<<"NO\n";
    }

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...