ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

1288. Астролокация

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
 — Вызывали, товарищ генерал?
 — Проходите. Мне порекомендовали вас как молодого многообещающего программиста. Как вы, наверно, знаете, наша новая… Хотя откуда же вам знать — это же все засекречено. В общем, нашему ведомству необходимо написать программу для анализа … э-э-э ну пусть сигналов, снимаемых с… э-э-э, ну назовем это локатором. Он предназначен для поиска крей… э-э-э, назовем это объектами, перемещающихся в слое гипер… Нет, в слое чего, я не могу вам сказать. Сам локатор установлен на нашей новой … ну, в общем, он тоже может двигаться. Сигнал вам будут выдавать по интерфейсу … Ну это не важно, для вас это будет последовательность чисел, каждое число от 0 до 100. Сначала в этой последовательности надо найти сигнал от передней стенки слоя — это число 95 или больше. Если таких чисел несколько, то за переднюю стенку будем считать первое, удовлетворяющее этому условию. Да, еще надо учесть что где-то перед этим числом в последовательности обязательно должно найтись число, не превышающее 35, иначе это не стенка, а… ну это вас не касается. Далее надо проверить два кан… два места, где могут находиться искомые объекты. Вам выдадут для каждого места два номера — начало и конец зоны поиска, отсчитываемых от передней стенки слоя. В этих зонах поиска надо будет проверить наличие объекта — то есть найти в этой зоне номеров максимальное число. Если оно больше некоторого уровня (вам его тоже скажут), то считаем, что объект найден. Тогда вам надо будет выдать сигнал наличия объекта и глубину его нахождения. Если в зоне контроля встретилось несколько чисел с максимальным значением, то за объект считаем первое из них. Есть еще одна трудность — толщина слоя постоянно меняется, хотя и ограничена снизу, и надо также отслеживать сигнал от задней стенки слоя. Сигнал от задней стенки — это также число 95 или больше, причем оно должно встретиться не раньше, чем через определенное количество чисел от передней стенки — это расстояние вам тоже скажут отдельно, и где-то между передней и задней стенками обязательно должно быть число, не превышающее 35. Конечно, если вы не нашли сигнала от передней стенки то проверять наличие объектов и задней стенки не надо. Также как и искать объекты после задней стенки. Надеюсь вам понятно, что сигнал задней стенки может оказаться в зоне контроля, и на него не надо реагировать как на объект. Все понятно?
 — А если…
 — Никаких если. Вы свободны, можете идти. Стойте, забыл вам сказать, что по последним данным сигнал внутри слоя затухает. Поэтому после нахождения передней стенки надо каждое последующее число последовательности домножать на коэффициент затухания, и только после этого анализировать. Коэффициент затухания для числа с номером m вычисляется по формуле 1 + (m − f) · А, где f — номер числа передней стенки, а точное число А вам выдадут после окончания исследований. Вот теперь можете идти.

Исходные данные

Вход начинается с 9 чисел, разделенных пробелами или переводами строки:
  1. количество чисел в последовательности N (4 ≤ N ≤ 10000);
  2. минимальная толщина слоя D (1 ≤ D ≤ N − 1) — это минимально допустимая разность между номерами чисел, отвечающих за поверхность и дно слоя;
  3. начало первой зоны поиска S1 (1 ≤ S1 ≤ N − 1) (если S — позиция, на которой обнаружена передняя стенка, то точку с номером S1+S уже надо проверять);
  4. конец первой зоны поиска E1 (S1 ≤ E1 ≤ N − 1) (точку S + E1 также надо проверять);
  5. уровень срабатывания в первой зоне L1 (1 ≤ L1 ≤ 100; если сигнал равен L1 или больше — объект найден);
  6. S2;
  7. E2;
  8. L2 — аналогичные числа для второй зоны;
  9. коэффициент затухания A (0 ≤ A ≤ 0.1; A содержит не более трёх знаков после десятичной точки).
Далее по одному числу в строке следуют N чисел — запись сигнала, каждое число от 0 до 100.

Результат

Если передняя стенка слоя не была найдена, выведите «No surface.». Если передняя стенка слоя была найдена, выведите «Surface found at *.», где вместо * стоит номер найденного числа поверхности (у самого первого числа последовательности номер равен 1). Далее в новой строке должен быть доклад по поиску задней стенки слоя, соответственно или «Bottom found at *.», где вместо * стоит разность номеров чисел задней и передней стенок, или «No bottom.». Далее в новой строке надо вывести доклад по первой зоне. Eсли в ней не было проанализировано ни одного числа, выведите «Channel 1: No search.». Иначе выведите одну из двух надписей: «Channel 1: Object at *.» — если объект найден (вместо * надо вывести разность номеров чисел объекта и передней стенки) или «Channel 1: No object.» — если объект не найден. Далее в новой строке аналогично выводится доклад по второй зоне (учтите, что там должно присутствовать «Channel 2»).

Пример

исходные данныерезультат
10 4 1 1 50 2 2 56 0.09
9
26
96
56
21
73
73
93
96
97
Surface found at 3.
Bottom found at 4.
Channel 1: Object at 1.
Channel 2: No object.
Автор задачи: Александр Мироненко
Источник задачи: Личное первенство УрГУ 2004