#include <bits/stdc++.h>
using namespace std;
long long int mod = 1e9 + 7;
long long int mul(long long int a, long long int b) {
  return ((a % mod) * (b % mod)) % mod;
}
long long int add(long long int a, long long int b) {
  return ((a % mod) + (b % mod)) % mod;
}
long long int sub(long long int a, long long int b) {
  return ((a % mod) - (b % mod) + mod) % mod;
}
long long int po(long long int a, long long int b) {
  if (b == 0) {
    return 1;
  }
  long long int t = po(a, b / 2);
  if (b % 2) {
    return mul(t, mul(t, a));
  } else {
    return mul(t, t);
  }
}
long long int a[1002][1002];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long int n, m, k;
  cin >> n >> m >> k;
  vector<pair<long long int, long long int>> v(n);
  for (long long int i = 0; i < n; i++) {
    cin >> v[i].first >> v[i].second;
  }
  vector<pair<long long int, pair<long long int, long long int>>> c(m);
  for (long long int i = 0; i < m; i++) {
    cin >> c[i].first >> c[i].second.first >> c[i].second.second;
  }
  set<long long int> s[m];
  for (long long int i = 0; i < n; i++) {
    for (long long int j = 0; j < m; j++) {
      long long int r = c[j].first;
      long long int x = c[j].second.first;
      long long int y = c[j].second.second;
      if (((v[i].first - x) * (v[i].first - x)) +
              ((v[i].second - y) * (v[i].second - y)) - (r * r) <
          0) {
        a[i][j] = 1;
      }
    }
  }
  while (k--) {
    long long int x, y;
    cin >> x >> y;
    x--;
    y--;
    long long int out = 0;
    for (long long int i = 0; i < m; i++) {
      if (a[x][i] && a[y][i]) {
        continue;
      }
      if (a[x][i] || a[y][i]) {
        out++;
      }
    }
    cout << out << "\n";
  }
  return 0;
}
