Submission #1283424

#TimeUsernameProblemLanguageResultExecution timeMemory
1283424DangKhoizzzzCurtains (NOI23_curtains)C++17
20 / 100
245 ms35988 KiB
#include <bits/stdc++.h>

#define int long long
#define ld long double
#define pii pair <int , int>
#define fi first
#define se second
#define arr3 array <int , 3>
#define coutld(x , k) cout << fixed << setprecision(k) << x

using namespace std;

const int maxn = 1e6 + 5;
const int INF = 2e9;
const int mod = 1e9 + 7;

int n , m , q;
bool check[maxn];
vector <int> lpos[maxn];

void solve()
{
	cin >> n >> m >> q;
    vector <int> cur;
    for(int i = 1; i <= m; i++)
    {
        int l , r; cin >> l >> r;
        lpos[r].push_back(l);
    }
    for(int i = 1; i <= n; i++)
    {
        cur.push_back(i);
        for(int x: lpos[i])
        {
            while(!cur.empty() && cur.back() >= x) cur.pop_back();
        }
        if(cur.size() == 0) check[i] = 1;
    }
    for(int i = 1; i <= q; i++)
    {
        int x , y; cin >> x >> y;
        if(check[y]) cout << "YES" << '\n';
        else cout << "NO" << '\n';
    }
	
}

signed main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL); cout.tie(NULL);
    solve();
	return 0;
}
#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...