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

1232. Посадка на астероид

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
Problem illustration
Управляемый зонд запущен с космической станции, находящейся на расстоянии h от поверхности большого астероида. Зонд должен совершить посадку на астероид. Зонд может двигаться строго по прямой на фиксированное расстояние d, после чего он получает новую команду со станции. Команда определяет новое направление движения. Каждое движение зонда должно приближать его к поверхности. Управляющие сигналы станции передаются только внутри конуса, имеющего угол α при вершине.
Таким образом, траектория зонда представляет собой ломаную, состоящую из отрезков одинаковой длины, лежащую внутри конуса. Последний отрезок траектории также должен быть длиной d, лежать внутри конуса передачи и заканчиваться на поверхности астероида.
Вашей задачей является определить, возможно ли выполнить посадку зонда при выполнении описанных условий. Если посадка возможна, найдите траекторию минимальной длины, включая координаты концов каждого отрезка. Точка посадки также должна быть найдена.
Координаты точек декартовы. Оси Ox и Oy лежат на поверхности астероида, ось Oz проходит через космическую станцию.

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

h (0.5000 ≤ h ≤ 99.9999), d (1.0000 ≤ d ≤ 5.0000), α (угол в радианах, 0.1000 ≤ α ≤ 2.0000). Все числа вещественные и имеют не более 4-х знаков после десятичной точки.

Результат

n — количество отрезков, составляющих траекторию, или −1, если посадка невозможна
x1 y1 z1
x2 y2 z2

xn yn zn — координаты точек, в которых зонд получает сигналы управления, а также точка посадки. Все координаты должны быть вычислены с точностью 0.0001.

Пример

исходные данныерезультат
11 5 2
3
0 3 7
3 3 3
3 –1 0
Источник задачи: Четвертьфинальные соревнования ACM ICPC 2002–2003 в центральном регионе России, Рыбинск, октябрь 2002