Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Чат
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 

Сотовая связь в большом городе

(Время: 1 сек. Память: 16 Мб Сложность: 35%)

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

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

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

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

Первая строка входного файла INPUT.TXT содержит целое число n (1 ≤ n ≤ 10000) - количество базовых станций в городе. Далее идут описания этих базовых станций. Каждое описание занимает две строки. На первой расположено название оператора сотовой связи, которому принадлежит эта базовая станция, а на второй - три целых числа x, y, r (-10000 ≤ x, y ≤ 10000, 1 ≤ r ≤ 10000) - соответственно ее координаты и радиус надежной связи. Последняя строка входного файла содержит два целых числа xa, ya (-10000 ≤ xa, ya ≤ 10000) - координаты абонента.

Все координаты во входном файле даны в одной и той же декартовой прямоугольной системе координат. Названия операторов - это непустые строки длиной не более 50 символов, состоящие из цифр, строчных и прописных букв латинского алфавита. Прописные и строчные буквы латинского алфавита различаются (например, MPS и mps - два разных оператора).

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

На первой строке выходного файла OUTPUT.TXT выведите число k – количество операторов сотовой связи, работающих в городе (разумеется, два оператора считаются разными, если их названия не совпадают). Далее выведите k строк. Каждая из этих строк должна содержать название оператора и количество базовых станций этого оператора, доступных абоненту. Первым должно идти название оператора, число базовых станций должно быть отделено от него одним пробелом. В этом списке операторы должны быть перечислены в том же порядке, в каком они встречаются во входном файле (см. примеры). Гарантируется, что k ≤ 100.

Примеры

INPUT.TXTOUTPUT.TXT
15
Megahorn
0 0 10
BeepLine
10 10 10
MPS
0 0 10
Ele2
0 0 1
SkyPink
100 100 10
5 5
5
Megahorn 1
BeepLine 1
MPS 1
Ele2 0
SkyPink 0
23
Megahorn
0 0 10
MPS
1 1 10
Megahorn
2 2 10
1 1
2
Megahorn 2
MPS 1

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]

Красноярский краевой Дворец пионеров, (c)2006 - 2017, ICQ: 151483