Прогноз влажности по температуре
Условие
Погодная станция сохраняет измерения температуры воздуха и относительной влажности. В некоторых строках влажность не была записана: вместо числа указано NA.
По измерениям с известной влажностью требуется построить линейную модель зависимости влажности от температуры: y = a + b*x, где x — температура, а y — влажность. Затем необходимо вычислить прогнозы для температур из запроса.
Пусть использованы только строки, в которых влажность не равна NA. Для них x̄ — средняя температура, а ȳ — средняя влажность. Коэффициенты модели определяются формулами:
b = Σ((x - x̄) * (y - ȳ)) / Σ((x - x̄)^2),
a = ȳ - b * x̄.
Если знаменатель в формуле для b равен нулю, следует считать b = 0, а a = ȳ. При равенстве значений температуры строки считаются разными измерениями, и каждая такая строка учитывается в формулах отдельно.
Формат ввода
В первой строке записаны два целых числа n и q — число строк измерений и число температур в запросе.
В следующих n строках записаны температура x и влажность y. Влажность задаётся целым числом или строкой NA.
В последней строке записаны q целых температур, для которых требуется получить прогноз.
Формат вывода
Выведите q чисел через пробел: прогнозы влажности для температур из запроса в том же порядке.
Каждый прогноз выведите с двумя знаками после точки. Округление выполняется до ближайшего значения с двумя знаками после точки, а при ровно равных расстояниях — в сторону от нуля.
Ограничения
1 ≤ n ≤ 2000.
1 ≤ q ≤ 20.
Температура в измерении и в запросе — целое число от -50 до 50.
Влажность — целое число от 0 до 100 либо строка NA.
Хотя бы в одной строке измерений влажность известна.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады по информатике — олимпиады перечня Минобрнауки, их уровни и что нужно к диплому
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки