Шаг роста ошибки модели темпа
Условие
Приложение бегуна обучает модель, предсказывающую темп на тренировке. После некоторых обновлений модели в дневник заносится значение функции потерь — целая неотрицательная ошибка прогноза темпа.
Вход содержит две таблицы. В первой таблице для каждого кода тренировки указан номер шага обновления модели. Во второй таблице по коду тренировки указано значение потерь. Строка со значением NA означает, что измерение потерь отсутствует. Коды, для которых нет строки во второй таблице, также не имеют измерения.
Нужно сопоставить строки таблиц по коду тренировки, отбросить записи без измерения, расположить оставшиеся записи по возрастанию номера шага и найти первый шаг, на котором потери выросли. Для двух соседних оставшихся записей с потерями L_prev и L_cur ростом считается строгое неравенство L_cur > L_prev.
Если ростов несколько, выводится шаг с наименьшим номером. Равные значения потерь ростом не считаются. Если после удаления пропусков ростов нет, следует вывести нет 0. Округление не применяется, все значения и номер шага выводятся как целые числа.
Формат ввода
В первой строке даны два целых числа n и m — количество строк в таблице шагов и количество строк в таблице измерений соответственно.
Следующие n строк содержат два значения: код тренировки run_id и номер шага step.
Следующие m строк содержат два значения: код тренировки run_id и значение потерь loss. Вместо значения потерь может стоять строка NA.
Формат вывода
Если найден первый шаг роста потерь, выведите строку шаг step, где step — его номер.
Если роста нет, выведите строку нет 0.
Ограничения
1 ≤ n ≤ 2000.
0 ≤ m ≤ n, n + m ≤ 4000.
Код тренировки состоит из латинских букв, цифр и символа _, его длина от 1 до 20.
Коды в первой таблице попарно различны. Коды во второй таблице также попарно различны и встречаются в первой таблице.
1 ≤ step ≤ 10^9, номера шагов в первой таблице попарно различны.
Каждое числовое значение loss удовлетворяет условию 0 ≤ loss ≤ 10^9.
Решить задачу с автопроверкой на Python →
Куда дальше
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами
- Олимпиада по информатике: с чего начать — два мира олимпиад — ВсОШ и перечневые: этапы, задания и на каком языке писать
- На программиста по олимпиаде: путь по классам — что даёт диплом, куда с ним берут на ИТ-направления и почему решает 9 класс