1800: Невільний песик

Перегляд у форматі PDF

Надіслати розв'язок

Бали: 18,00 (partial)
Time limit: 1.0s
Memory limit: 250M

Author:
Problem type
Allowed languages
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Песика атакували злі бджоли. Для того, щоб від них сховатись, добрі смурфики побудували ~n~ куполів.

Математично купол --- це півколо, яке має центр у точці ~(pos_i,0)~ і має радіус ~r_i~, через стінку купола неможливо пройти. Песика і вулик можна представити як дві точки ~(x_1,y_1)~ та ~(x_2,y_2)~, якщо точка лежить на куполі, то вважатимемо, що точка всередині нього.

Допоможіть песику дізнатись, чи в безпеці він. Тобто чи зможуть бджоли дістатися песика, не перетинаючи куполи.

Формат вхідних даних

Перший рядок містить п'ять цілих чисел ~n~, ~x_1~, ~y_1~, ~x_2~, ~y_2~ ~(1 \le n \le 10^3, 0 \le x_1,y_1,x_2,y_2 \le 10^3)~.

Кожен з наступних ~n~ рядків містить по два цілі числа ~pos_i~ та ~r_i~ ~(0 \le pos_i \leq 10^3~; ~1 \leq r_i \le 10^3)~.

Формат вихідних даних

Якщо бджоли можуть дістатися песика, не перетинаючи стінки куполів, виведіть ~YES~.

Інакше, у першому рядку виведіть ~NO~, а в другому виведіть найменший індекс (починаючи з одиниці) купола, який розділяє бджіл та песика.

Примітка

Пояснення до першого тесту:

Пояснення до другого тесту:

Пояснення до третього тесту:

Приклад вхідних даних

3 2 1 2 2
2 1
3 2
3 1

Приклад вихідних даних

NO
1

Приклад вхідних даних

2 1 1 3 0
2 2
3 1

Приклад вихідних даних

NO
2

Приклад вхідних даних

2 2 1 4 1
3 2
3 1

Приклад вихідних даних

YES

Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.