Расписание занятий: переопределение equals и hashCode

Kotlin Средний data classes

Задача «Расписание занятий: переопределение equals и hashCode»

Создайте data class `Lesson` с полями: название (String), преподаватель (String), аудитория (String), день недели (Int, 1-7), номер пары (Int, 1-8). Реализуйте функцию, которая принимает список занятий и возвращает новый список, где удалены дубликаты (занятия считаются одинаковыми, если у них совпадают все поля). Порядок оставшихся элементов должен сохраняться как в исходном списке. Гарантируется, что названия и преподаватели не содержат пробелов.

Формат ввода

В первой строке целое число N (1 ≤ N ≤ 1000) — количество занятий. Затем N строк, каждая в формате: "Название Преподаватель Аудитория ДеньНедели НомерПары" (через пробел).

Формат вывода

Выведите K — количество уникальных занятий, затем K строк в том же формате, что и во входных данных.

main.kt