Проверка прогноза солнечной выработки
Условие
Для солнечной электростанции собраны измерения за разные моменты времени. В каждой строке известны освещённость, фактическая выработка панелей и прогноз модели. Иногда прогноз модели отсутствует и обозначается символом -.
Базовый прогноз всегда выдаёт одно и то же значение: среднюю фактическую выработку по всем n строкам измерений. Если фактические выработки равны y_1, y_2, ..., y_n, то базовый прогноз равен c = (y_1 + y_2 + ... + y_n) / n.
В конце входа приведён запрос: несколько значений освещённости. Для проверки берутся только строки, чья освещённость совпадает хотя бы с одним значением запроса и где прогноз модели не пропущен. Для этих строк вычисляется средняя абсолютная ошибка MAE:
MAE = (|p_1 - y_1| + |p_2 - y_2| + ... + |p_m - y_m|) / m,
где y_i — фактическая выработка, а p_i — прогноз проверяемого способа. Для базового прогноза вместо каждого p_i используется число c.
Требуется определить, чей MAE на строках запроса меньше: модели или базового прогноза. В первой части ответа нужно вывести MODEL или BASELINE, затем через пробел вывести MAE выбранного способа.
Если значения MAE равны, нужно вывести BASELINE.
Формат ввода
В первой строке даны два целых числа n и q — число измерений и число значений освещённости в запросе.
В следующих n строках даны три значения: irradiance, actual, prediction — освещённость в Вт/м², фактическая выработка в Вт и прогноз модели в Вт. Вместо прогноза может стоять символ -.
В последней строке даны q целых чисел — значения освещённости из запроса.
Формат вывода
Выведите слово MODEL или BASELINE, затем через пробел MAE выбранного способа с двумя знаками после десятичной точки.
Дробное значение MAE округляется до двух знаков после десятичной точки по обычному правилу: при ровно половине сотой округление производится в большую сторону.
Ограничения
1 ≤ n ≤ 2000.
1 ≤ q ≤ 50.
0 ≤ irradiance ≤ 1200.
0 ≤ actual ≤ 10000.
Если прогноз не пропущен, то 0 ≤ prediction ≤ 10000.
Все значения освещённости в последней строке находятся от 0 до 1200 включительно.
В запросе нет повторяющихся значений освещённости.
Гарантируется, что среди строк, подходящих под запрос, есть хотя бы одна строка с известным прогнозом модели.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам