#include // all #include // pdqsort #pragma GCC optimize ("O3") #pragma GCC target ("arch=x86-64-v3,tune=native") using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int n; cin >> n; vector> ab(n); vector> ba(100001); for (int i = 0; i < n; i++) { int a, b; cin >> a >> b; ab[i] = {a, b}; ba[b].push_back(a); } for (int i = 1; i <= n; i++) { boost::sort::pdqsort(ba[i].begin(), ba[i].end()); } boost::sort::pdqsort(ab.begin(), ab.end(), [](pair a, pair b) { return a.first < b.first; }); int q; cin >> q; while (q--) { int x, y; cin >> x >> y; auto it = ranges::partition_point(ab.begin(), ab.end(), [x](pair a) { return a.first <= x; }); auto it2 = ranges::partition_point(ba[y].begin(), ba[y].end(), [x](int a) { return a <= x; }); auto r = distance(ab.begin(), it) - distance(ba[y].begin(), it2); cout << r << '\n'; } }