Задача №3581. Туризм

Александр недавно увлекся горным туризмом. Ему уже надоело покорять отдельные горные пики, и он собирается покорить самую настоящую горную цепь!

Напомним, что Александр живет в плоском мире. Горная цепь состоит из отрезков, соединяющих точки на плоскости, каждая из которых находится строго правее предыдущей (x-координата следующей точки больше, чем у предыдущей). Трассой на горной цепи называется её часть между двумя фиксированными точками цепи, которые не обязательно являются концами отрезков.

Участок, на котором при движении по трассе координата y (высота) всегда возрастает, называется подъемом, величиной подъема называется разность высот между начальной и конечной точками участка. Ниже изображена горная цепь из 7 точек, на ней задана трасса, которая состоит из четырех участков (трасса выделена жирным). Если проходить трассу слева направо, то один из участков является подъемом.

Туристическая компания предлагает на выбор несколько трасс на одной горной цепи. Александр из-за финансовых трудностей может выбрать для поездки только одну из этих трасс. Вы решили помочь ему с выбором. Александру важно для каждой трассы определить суммарную высоту подъемов на ней.

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

В первой строке входного файла содержится единственное число N — количество точек ломаной, задающей горную цепь (1 ≤ N ≤ 100 000). Далее в N строках содержатся описания точек, каждое из которых состоит из двух целых чисел, xi и yi (1 ≤ xi, yi ≤ 109).

В следующей строке находится число M — количество трасс (1 ≤ M ≤ 100 000).

Далее в M строках содержатся описания трасс, каждое описание представляет собой два целых числа, si и fi, они обозначают x-координаты начала и конца трассы, соответственно. Начало и конец трассы могут совпадать.

Гарантируется, что во входном файле задана именно горная цепь, и ни одна из трасс не выходит за ее пределы.

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

Для каждой трассы выведите одно число — суммарную высоту подъемов на данной трассе. Ваш ответ будет считаться правильным, его его абсолютная или относительная погрешность не будет превышать 10 - 6.

Примеры
Входные данные
7
2 1
4 5
7 4
8 2
9 6
11 3
15 3
1
5 10
Выходные данные
4.0000000000
Входные данные
6
1 1
3 2
5 6
7 2
10 4
11 1
3
9 11
3 10
7 3
Выходные данные
0.6666666667
6.0000000000
4.0000000000
Сдать: для сдачи задач необходимо войти в систему