eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Дерево резисторов

Дерево резисторов

Построим следующее дерево: в корне одна вершина, с этой вершины выходит \textbf{A_1} рёбер, с последующих \textbf{A_1} листьев выходит по \textbf{A_2} рёбер с каждого, из последующих \textbf{A_1A_2} вершин на уровне \textbf{2} (если считать что корень -- уровень \textbf{0}, следующие вершины (\textbf{A_1} штук) -- уровень \textbf{1}, и т.д., …) выходит по \textbf{A_3} рёбер и т.д. до \textbf{N}-го уровня. Потом это всё дерево отображается симметрично (единственный уровень, который не отзеркаливается - это уровень под номером \textbf{N}) и получается такое себе сплетение из рёбер, у которого по \textbf{1}-й вершине на уровнях \textbf{0} и \textbf{2N}. \includegraphics{https://static.e-olymp.com/content/b9/b92574d5d1824c9733455a05a8b640129a4ec26d.jpg} Кождое ребро, которое соединяет уровни \textbf{I} и \textbf{I+1}, имеет одинаковые сопротивления \textbf{R_i}. Ваша задача состоит в том, чтобы расчитать сопротивление между вершинами на уровнях \textbf{0} и \textbf{2N}. \InputFile Целое число \textbf{N} (\textbf{N} ≤ \textbf{50}). В следующей строке \textbf{N} чисел -- количество рёбер, выхлдящих соответственно с \textbf{0}-го уровня, \textbf{1}-го уровня, \textbf{2}-го уровня и т.д. В следующей строке \textbf{2N} чисел -- сопротивления проводников, соединяющих соответственно \textbf{0}-й и \textbf{1}-й уровень, \textbf{1}-й и \textbf{2}-й уровень, и т.д. \textbf{1} ≤ \textbf{A_i} ≤ \textbf{50}, \textbf{1} ≤ \textbf{R_i} ≤ \textbf{100}. \OutputFile Единственное число - итоговое сопротивление системы. Вывести нужно \textbf{200} точных знаков результата после запятой, есди же нужная точность результата достигается раньше, то выводить концевые нули не нужно.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
2
2 4
1 2 3 4
Выходные данные #1
3.125