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

Резервуар

Резервуар

Рассмотрим ломанную, координаты вершин которой равны (x1, y1), (x2, y2), (x3, y3), . . ., (xn, yn) и удовлетворяют неравенствам x1 < x2 < x3 < ... < xn и yiyi+1 для всех i. Давайте пустим лучи вверх от самой левой (x1, y1) и самой правой (xn, yn) точки. Преобразуем плоскую фигуру в трехмерное тело с толщиной 1.

prb2151

У нас получился резервуар. Его передняя и задняя плоскости являются ровными, вертикальными и параллельны друг другу, расстояние между котороыми 1. Левая и правая грани (образованные вертикальными лучами) также ровные, вертикальные и параллельны друг другу. Дно резервуара образовано начальной цепью ломанной. Резервуар установлен таким образом, что независимо от его формы дна и уровня наполнения он никогда не перевернется.

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

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

Количество вершин в ломанной n (2n123456), за которой следуют n пар целых чисел x1y1x2y2xnyn, описывающих координаты вершин. Последнее число задает объем налитой воды V. Все координаты целые, изменяются от –106 до 106; Объем является целым и лежит в промежутке 0V1012.

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

Вывести одно действительное число — площадь результирующей поверхности воды. Точность вычислений не должна быть меньше 10–3.

prb2151-1

Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
5
-1 2 1 0 3 3 5 0 7 1 
8
Выходные данные #1
6.309401
Источник International Collegiate Programming Contest, Ukraine, Quarter-Final,May 19, 2011