Наибольший скачок времени доставки

тема: Временные ряды и окна · уровень: базовый

Условие

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

Время доставки может отсутствовать: это означает, что заказ ещё не завершён или данные не поступили. Такой заказ не участвует в вычислении разности с соседними заказами.

Для каждой пары соседних строк первой таблицы, у которых времена доставки известны в обеих строках, вычисляется модуль скачка

\[ D_i = |t_i - t_{i-1}|, \]

где \(t_{i-1}\) и \(t_i\) — времена доставки заказов в соседних строках журнала. Требуется вывести идентификатор второго заказа пары с наибольшим значением \(D_i\). Если подходящих пар нет, следует вывести 0.

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

Формат ввода

В первой строке даны два целых числа n и m — число строк в таблице последовательности заказов и число строк в таблице известных времен доставки.

В следующих n строках записаны два целых числа dispatch_no и order_id — номер передачи заказа курьеру и идентификатор заказа. Строки уже расположены по возрастанию dispatch_no.

В следующих m строках записаны два целых числа order_id и delivery_minutes — идентификатор заказа и время его доставки в минутах. Строки второй таблицы могут быть расположены в любом порядке.

Формат вывода

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

Округление не требуется, так как ответ является целым числом.

Ограничения

1 ≤ n ≤ 1000.

0 ≤ m ≤ n.

1 ≤ dispatch_no ≤ 1000, номера dispatch_no в первой таблице различны и идут по возрастанию.

1 ≤ order_id ≤ 10^9, идентификаторы заказов в первой таблице различны.

1 ≤ delivery_minutes ≤ 300.

Каждый order_id второй таблицы присутствует в первой таблице, а идентификаторы во второй таблице различны.

Решить задачу с автопроверкой на Python →

Куда дальше