Задача №114526. Превышение скорости

Превышение скорости является опасным нарушением, значительно увеличивающим вероятность трагических последствий транспортных происшествий. К сожалению контроль скорости с использованием радаров и камер не решает проблему полностью. Притормаживая перед камерами, водители едут со значительным превышением на участках дорог, где контроль не ведётся. С целью предотвращения такого поведения используется назначение штрафа за гарантирование превышение скорости, основанное на времени проезда дороги.

Рассмотрим дорогу, состоящую из \(n\) участков, пронумерованных от \(1\) до \(n\). Длина \(i\)-го участка составляет \(l_i\) метров. На \(i\)-м из участков установлено ограничение по скорости в \(v_i\) м/с.

За превышение скорости предусмотрены штрафы. В зависимости от превышения, установлены различные штрафы, величина штрафа вычисляется следующим образом.

Пусть \(e\) — максимальное превышение разрешённой скорости в процессе пребывания автомобиля на всей дороге, то есть максимальная разница между скоростью автомобиля и максимальной разрешенной скоростью на участке, где он в этот момент находится. Если превышения скорости не было, то штраф не взимается. В противном случае штраф вычисляется так:

  • если \(0 \lt e \le a_1\), то штраф составляет \(f_1\) денежных единиц;
  • если \(a_1 \lt e \le a_2\), то штраф составляет \(f_2\) денежных единиц;
  • \(\ldots\)
  • если \(a_{m - 2} \lt e \le a_{m-1}\), то штраф составляет \(f_{m-1}\) денежных единиц;
  • если \(a_{m-1} \lt e\), то штраф составляет \(f_{m}\) денежных единиц.
Таким образом, есть \(m\) диапазонов превышения скорости и соответствующие им штрафы.

Автоматическая система назначения штрафов получила данные о \(q\) автомобилях. Для удобства пронумеруем их от \(1\) до \(q\). Известно, что \(i\)-й автомобиль заехал на дорогу в момент времени \(s_i\), проехал все \(n\) участков, после чего выехал с нее в момент времени \(t_i\). Отсчёт времени будем вести в секундах с открытия дороги.

Для каждого из автомобилей система должна определить, какой максимальный штраф можно гарантированно выписать этому автомобилю, основываясь только на времени заезда на дорогу и выезда с нее.

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

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

Первая строка входных данных содержит единственное целое число \(n\) — количество участков на дороге (\(1 \le n \le 10\)).

Вторая строка содержит \(n\) целых чисел \(v_i\) — ограничения скорости на участках (\(1 \le v_i \le 10^9\)).

Третья строка содержит \(n\) целых чисел \(l_i\) — длины участков (\(1 \le l_i \le 10^9\)).

Четвертая строка содержит единственное целое число \(m\) — количество границ диапазонов превышения скорости (\(1 \le m \le 10^5\)).

Пятая строка содержит \(m-1\) целых чисел \(a_i\) — границы диапазонов превышения скорости (\(1 \le a_i \le 10^9\)). Гарантируется, что значения \(a_i\) строго возрастают. Обратите внимание, что если \(m = 1\), то пятая строка ввода пустая.

Шестая строка содержит \(m\) целых чисел \(f_i\) — штрафы за диапазоны превышения скоростей (\(1 \le f_i \le 10^9\)). Гарантируется, что значения \(f_i\) возрастают.

Седьмая строка содержит единственное целое число \(q\) — количество автомобилей, которые надо обработать (\(1 \le q \le 10^5\)).

Каждая из следующих \(q\) строк содержит два целых числа \(s_i\) и \(t_i\) — время заезда на трассу и выезда с неё \(i\)-го из рассматриваемых автомобилей (\(1 \le s_i \lt t_i \le 10^9\)).

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

Для каждого из \(q\) автомобилей выведите в отдельной строке максимальный штраф, который гарантированно можно выписать этому автомобилю, основываясь только на временах его заезда на дорогу и выезда с нее. Если возможна ситуация, что автомобиль ни разу не превысил разрешённую скорость, следует вывести \(0\).

Гарантируется, что если время въезда или выезда автомобиля изменить не более чем на \(10^{-5}\), штраф, который можно ему выписать, не изменится.

Система оценки

Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.

Подзадача Баллы Дополнительные ограничения Необходимые подзадачи Информация о проверке
1 5 \(n = 1\), \(m = 1\) первая ошибка
2 10 \(m = 1\) 1 первая ошибка
3 9 \(n = 1\), \(m \le 10\) 1 первая ошибка
4 12 \(n = 1\) 1, 3 первая ошибка
5 13 \(m \le 10\), \(a_i \le 10\) первая ошибка
6 14 \(m \le 10\) 1, 2, 3, 5 первая ошибка
7 37 1 – 6 первая ошибка

Примеры
Входные данные
3
10 20 30
400 500 600
6
1 5 10 12 16
100 300 600 800 1000 1500
3
10 100
20 70
45 100
Выходные данные
0
800
600
Сдать: для сдачи задач необходимо войти в систему