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

NEERC 2008, Четвертьфинал Восточного подрегиона

Описание     Задачи     Отправить на проверку     Состояние проверки     Результаты
Соревнование завершено

E. Конвейер Смерти

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
Problem illustration
Империя переживает тяжёлый экономический кризис. Огромные средства были потрачены на постройку "Звёзд Смерти", однако повстанцам удалось с легкостью уничтожить каждую из них. В сложившейся ситуации есть два возможных варианта действий: либо начать мирные переговоры с повстанцами и попытаться найти политическое решение конфликта (против чего решительно протестует Дарт Вейдер), либо радикально удешевить стоимость "Звёзд Смерти". Был выбран второй вариант. Производство решено было перенести в Соседнюю Галактику, где гораздо дешевле рабочая сила. Промышленность Соседней Галактики уже давно успешно освоила выпуск гигантских стальных балок длиной в 1 стандартную звёздную единицу. Решено было массово собирать "Звёзды Смерти" из этих балок в виде правильных многогранников (платоновых тел). В каждой вершине такого многогранника устанавливается мегапушка, которая стреляет вдоль луча, исходящего из центра многогранника и проходящего через эту вершину (местная вертикаль). Когда станция дальнего обнаружения засекает приближающийся корабль повстанцев, вся "Звезда Смерти" поворачивается так, чтобы ближайшая мегапушка была нацелена прямо на корабль. При этом расход топлива пропорционален углу поворота. После залпа и неизбежного уничтожения повстанцев "Звезда Смерти" не меняет своей ориентации до следующей атаки.
Несмотря на подавляющее технологическое преимущество Империи, повстанцы продолжают атаковать "Звёзды Смерти". А Империя продолжает тратить огромные суммы на топливо и амуницию. Министр финансов Империи от отчаяния собрался вновь поднять вопрос о мирных переговорах на аудиенции у Императора. Но чтобы защитить себя от гнева Дарта Вейдера, он решил представить чёткое экономическое обоснование и попросил вас посчитать, сколько именно топлива тратится на отражение атак повстанцев.

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

В первой строке указано, в виде какого именно платонова тела была построена конкретная "Звезда Смерти". Ниже, в таблице, указаны названия и основные характеристики этих тел.
Многогранник Вершин Рёбер Граней
tetrahedron 4 6 4
hexahedron 8 12 6
octahedron 6 12 8
dodecahedron 20 30 12
icosahedron 12 30 20
В следующей строке указано число n — количество атак повстанцев, отражённых этой "Звездой Смерти" (1 ≤ n ≤ 100). Каждая из следующих n строк содержит вектор атаки, заданный с точностью до 5 знаков после запятой. Векторы даны в системе координат, неподвижной относительно окружающего пространства. Геометрический центр "Звезды Смерти" покоится в центре этой системы координат. Вы можете считать, что в начальном положении одна из мегапушек целится точно по направлению оси Oz, а одно из смежных с ней рёбер лежит в плоскости Oxz (в полуплоскости x ≥ 0). Станция дальнего обнаружения засекает только корабли, движущиеся из глубин Вселенной точно в центр "Звезды Смерти". Атаки следуют одна за другой в указанном порядке с существенным временным промежутком между ними. В истории Имперского Флота не было случаев, когда не могли решить, какой именно мегапушкой развернуться в сторону атакующего корабля.

Результат

Выведите суммарный угол поворота в радианах с точностью до 5 знаков после десятичной точки.

Пример

исходные данныерезультат
tetrahedron
5
0.00000 0.00000 -1.00000
-1.00000 0.00000 1.00000
0.00000 0.00000 -1.00000
-1.00000 0.00000 1.00000
0.00000 0.00000 -1.00000
1.78225
Автор задачи: Павел Атнашев
Источник задачи: NEERC 2008, Четвертьфинал Восточного подрегиона
Чтобы отправить решение этой задачи на проверку перейдите в Архив задач: 1653. Конвейер Смерти