Попадание в цели
Фундаментальная задача в вычислительной геометрии — определить, пересекаются ли два объекта. Например, в игре со стрельбой нужно выяснить, попадает ли выстрел игрока в цель. Выстрел представляется в виде двумерной точки, а цель — в виде двумерной замкнутой области. Выстрел считается попавшим в цель, если он находится внутри этой области. Граница цели также считается её частью. Поскольку цели могут пересекаться, необходимо определить, сколько целей поражает каждый выстрел.
На изображении выше показаны цели (большие незаполненные прямоугольники и круги) и выстрелы (заполненные круги) из примера ввода. Начало координат (0, 0) обозначено маленьким незаполненным кругом рядом с центром.
Входные данные
Ввод начинается с целого числа 1 ≤ m ≤ 30, которое указывает количество целей. Каждая из следующих m строк начинается со слова rectangle или circle, за которым следует описание границы цели. Граница прямоугольной цели задается четырьмя целыми числами x_1 y_1 x_2 y_2, где x_1 < x_2 и y_1 < y_2. Точки (x_1, y_1) и (x_2, y_2) являются соответственно нижним левым и верхним правым углами прямоугольника. Граница круглой цели задается тремя целыми числами x y r. Центр круга находится в точке (x, y), а 0 < r ≤ 1000 — это радиус круга.
После описания целей следует целое число 1 ≤ n ≤ 100, которое указывает количество выстрелов. Далее идут n строк, каждая из которых содержит два целых числа x y, обозначающих координаты выстрела. Все координаты x и y для целей и выстрелов находятся в диапазоне [−1000, 1000].
Выходные данные
Для каждого из n выстрелов выведите количество целей, в которые он попадает.