Задача C. VR-обсерватория

Автор:А. Баранов   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Молодой программист Вася занимается разработкой собственной VR-игры, представляющей собой симулятор астрономической обсерватории. Предполагается, что в ней игрок должен будет смотреть на звезды через окуляр круглой формы с фокусом, расположенным в начале координат.

В целях тестирования игровой механики Вася сгенерировал достаточно большое число трехмерных точек. Теперь ему требуется для некоторого заданного направления обзора, фокусного расстояния и радиуса окуляра определить число всех таких точек, попадающих в его поле зрения.
При этом точки, расположенные между окуляром и фокусом, должны быть проигнорированы.

Формат входного файла

В начале входного файла "input.txt" записано натуральное число N, за которым следует ровно 3 ⋅ N координат точек (Xi, Yi, Zi).

Далее записано число M, за которым следует M запросов, каждый из которых задается вектором направления Dj = (Uj, Vj, Wj) и радиусом Rj.
При этом полагается, что длина вектора Dj соответствует фокусному расстоянию.

Формат выходного файла

Выходной файл "output.txt" должен содержать M целых чисел — ответы на каждый запрос.

Ограничения

Гарантируется, что суммарное число точек во всех запросах не превосходит 106.

Все входные значения являются целыми десятичными числами.

 − 106 ≤ (Xi, Yi, Zi) ≤ 106,  − 106 ≤ (Uj, Vj, Wj) ≤ 106, 0 < |Dj|, 0 ≤ Rj ≤ 106

1 ≤ N ≤ 105, 1 ≤ M ≤ 105

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
10
 40  25 -31
 12 -36  24
-45  10  37
-13  26 -51
 30  32  64
-16 -17  20
 21  23  35
 46 -14  18
 10 -30  20
 39 -19 -45

5
 3 -3 -2  0
 1 -3  2  0
 1  1  1  9
 7 -5  8  1
 1 -1 -1  8
0
2
4
0
5

0.174s 0.016s 21