#include <bits/stdc++.h>
using namespace std;
const long long N = 1e5 + 1;
struct Point {
  long long x, y;
};
long long S(Point &a, Point &b, Point &c) {
  return (a.x - c.x) * (b.y - a.y) - (a.x - b.x) * (c.y - a.y);
}
long long n, t;
long long ans = 0;
long long k, mid = 0;
signed main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  Point a[N], p;
  cin >> n;
  for (long long i = 0; i < n; ++i) cin >> a[i].x >> a[i].y;
  a[n] = a[0];
  cin >> t;
  while (t--) {
    cin >> p.x >> p.y;
    ans = n * (n - 1) * (n - 2) / 6;
    mid = 1;
    for (long long j = 0; j < n; ++j) {
      if (S(p, a[j], a[j + 1]) > 0) {
        ans = 0;
        break;
      }
      while (S(p, a[j], a[mid]) < 0) mid = (mid + 1) % n;
      k = (n + j - mid - 1) % n;
      ans -= k * (k + 1) / 2;
    }
    cout << ans << endl;
  }
  return 0;
}
