Самый длинный рост выдачи корма
Условие
В зоопарке для каждой запланированной выдачи корма создаётся запись с идентификатором выдачи. Строки первой таблицы расположены в хронологическом порядке.
Во второй таблице хранятся отчёты сотрудников о фактически выданном корме. Отчёт сопоставляется с запланированной выдачей по идентификатору. Часть отчётов может отсутствовать.
Нужно определить длину самого длинного непрерывного участка запланированных выдач, для которого отчёты есть у всех выдач, а масса фактически выданного корма не убывает.
Пусть для выдач с номерами от l до r в первой таблице найдены отчёты, а соответствующие массы равны x_l, x_{l+1}, ..., x_r. Такой участок подходит, если x_i <= x_{i+1} для каждого i от l до r-1. Требуется найти максимальную длину r-l+1 такого участка. Если ни для одной выдачи нет отчёта, ответ равен 0.
При равенстве масс соседних выдач участок продолжается, так как неубывание допускает равенство. Если максимальная длина достигается у нескольких участков, выводится только их общая длина.
Ответ является целым числом, дробная часть отсутствует.
Формат ввода
В первой строке даны два целых числа n и m: количество запланированных выдач и количество отчётов.
В следующих n строках находится первая таблица. Каждая строка содержит один целый идентификатор feeding_id запланированной выдачи. Порядок этих строк задаёт хронологический порядок.
В следующих m строках находится вторая таблица. Каждая строка содержит два целых числа: feeding_id и food_grams, где food_grams — фактически выданная масса корма в граммах. Строки второй таблицы могут идти в любом порядке.
Формат вывода
Выведите одно целое число — длину самого длинного подходящего непрерывного участка.
Ограничения
1 <= n <= 1000.
0 <= m <= n.
n + m <= 2000.
1 <= feeding_id <= 10^9.
0 <= food_grams <= 50000.
Идентификаторы в первой таблице попарно различны. Идентификаторы во второй таблице попарно различны. Каждый идентификатор второй таблицы присутствует в первой таблице.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады по информатике — олимпиады перечня Минобрнауки, их уровни и что нужно к диплому
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки