Пчеловод-Чудик

Submit solution

Points: 100
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
C, C++, Python

У пчеловода-чудика имеется N улей, в которых живут пчелы-секьюрити. В зависимости от того, как хорошо питаются, пчелы-секьюрити способны защитить вокруг своего улья квадратную зону размера S*S (этот параметр для всех улей одинаков, а сами улья находятся в центре этих зон).

Пчеловод-чудик очень боится нашествия зомби-пчел по ночам и уверен, что сможет защитить свой дом с помощью пчел-секьюрити, правильно разместив улья. Для защиты ему достаточно расположить все имеющиеся у него улья вокруг дома так: защищенная зона всех ульев должна образовывать вокруг дома пчеловода-чудика замкнутый контур, через который не смогут проникнуть зомби-пчелы. При этом слишком близко к дому улья не ставятся (т.е. исключен случай, что дом находится в зоне защиты какого-то улья).

Рисунок с примером ульев:

image

Пчеловод-чудик очень торопится и каждый вечер заново расставляет свои улья по-новому. Поскольку сумерки наступают быстро, то пчеловод-чудик не всегда может очень хорошо защитить свой дом. Зато он успевает зафиксировать координаты всех ульев (чтобы завтра их можно было быстрее найти и переставить). Кроме того, гарантируется, что ему удается делать такую расстановку, чтобы у каждого улья было не больше двух соседних. Два улья будут соседними, если они расположены на небольшом расстоянии и их зоны защиты касаются либо пересекаются, как показано на рисунке.

Важно, что зона защиты улей всегда ориентирована в пространстве правильно (границы зоны параллельны осям в той системе координат, где фиксируются координаты).

Также будем полагать, что дом пчеловода-чудика и улья будут точками с целыми координатами. Для простоты разместим дом в точку (0, 0).

Напишите программу, которая поможет пчеловоду-чудику по координатам улей определить, построена ли защита для его дома.

Входные данные

В первой строке файла (через пробел) записано число улей \(N (1 ≤ N ≤ 10^5)\) и размер зоны защиты улья S \((1 ≤ S ≤ 10^6)\). Далее в файле содержится ровно N строк с парой чисел, разделенных пробелом: \(X_m Y_m\) – координаты улей \((1 ≤ |X_m|, |Y_m| ≤ 10^9)\).

Выходные данные

Yes или No. Yes – пчеловод-чудик смог защитить дом; No – пчеловод-чудик не смог защитить дом.

Входные данные

8 4
0 -5
-4 -4
0 5
4 -4
4 4
5 0
-5 0
-4 4

Выходные данные

Yes

Comments

There are no comments at the moment.