Сравнение прогнозов рейтинга по жанру
Условие
Онлайн-кинотеатр хранит оценки фильмов, поставленные зрителями. Для части фильмов оценка ещё не собрана и обозначена словом NA.
Базовая модель для любого фильма предсказывает среднюю оценку всех фильмов с известной оценкой. Модель жанра для фильма предсказывает среднюю оценку фильмов того же жанра с известной оценкой.
Для каждого жанра из запроса нужно сравнить модели только на фильмах этого жанра с известной оценкой. Среднеквадратичная ошибка называется MSE и вычисляется по формуле MSE = ((y1 - p1)^2 + (y2 - p2)^2 + ... + (yk - pk)^2) / k, где yi — настоящая оценка фильма, pi — прогноз модели, а k — число фильмов жанра с известной оценкой.
Для каждого жанра из запроса следует вывести ЛУЧШЕ, если MSE модели жанра строго меньше MSE базовой модели, и РАВНЫ, если ошибки равны. После слова выводится разность MSE_базовой - MSE_жанра. При равенстве MSE выводится слово РАВНЫ и число 0.00.
Число после слова выводится с двумя знаками после точки, округляя до ближайшего значения, а при ровно половине между двумя значениями — в большую сторону. В каждой строке входа с фильмом жанр записан одним словом без пробелов. Гарантируется, что каждый жанр из запроса встречается хотя бы у одного фильма с известной оценкой и что во всей базе есть хотя бы одна известная оценка.
Формат ввода
В первой строке дано целое число n — количество фильмов.
В следующих n строках даны жанр и оценка фильма через пробел. Оценка является целым числом или словом NA.
В следующей строке дано целое число q — количество жанров в запросе.
В следующих q строках дано по одному жанру. Для каждого из них требуется вывести результат сравнения.
Формат вывода
Выведите q строк. В каждой строке выведите слово ЛУЧШЕ или РАВНЫ, затем пробел и разность MSE с двумя знаками после точки.
Ограничения
1 ≤ n ≤ 2000.
1 ≤ q ≤ 50.
Длина названия жанра составляет от 1 до 20 символов. Название содержит только строчные латинские буквы.
Если оценка не равна NA, то это целое число от 1 до 10.
Каждый жанр из запроса имеет хотя бы одну известную оценку.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам
- Олимпиада по информатике: с чего начать — два мира олимпиад — ВсОШ и перечневые: этапы, задания и на каком языке писать