#include #include #include #include using Int = long long; int main() { int N, K; std::cin >> N >> K; int H[N]; for (int i = 0; i < N; ++i) std::cin >> H[i]; int X[N], Y[N]; for (int i = 0; i < N; ++i) std::cin >> X[i] >> Y[i]; std::vector> A(N); for (int i = 0; i < N; ++i) { A[i] = {H[i], X[i], Y[i]}; } std::sort(A.begin(), A.end()); int ans = N; for (int i = 0; i < N; ++i) { auto [a, b, c] = A[i]; bool ok = false; for (int j = i + 1; j < N; ++j) { auto [d, e, f] = A[j]; ok |= a < d && Int(b - e) * (b - e) + Int(c - f) * (c - f) <= Int(K) * K; } ans -= ok; } std::cout << ans << std::endl; }