#include "bits/stdc++.h"
using namespace std;
#define int long long
signed main() {
    int r, c, n;
    cin >> r >> c >> n;
    vector <int> a(n);
    vector <int> b(n);
    for (int i = 0; i < n; i ++) cin >> a[i] >> b[i];
    set <pair <int, int>> st;
    for (int i = 0; i < n; i ++) st.insert({a[i], b[i]});
    map <int, vector <int>> mp;
    for (int i = 0; i < n; i ++) mp[a[i]].push_back(b[i]);
    for (auto &[i, v] : mp) {
        sort(v.begin(), v.end());
    }
    int t;
    cin >> t;
    while (t --) {
        int sx, sy, ex, ey;
        cin >> sx >> sy >> ex >> ey;
        int ind = lower_bound(mp[sx].begin(), mp[sx].end(), sy) - mp[sx].begin();
        if (mp[sx][ind] <= ey) cout << "Yes" << endl;
        else cout << "No" << endl;
    }
    return 0;
}
| # | 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... |