Horario de Clases: Sobrescribir equals y hashCode

Kotlin Medium data classes

Tarea «Horario de Clases: Sobrescribir equals y hashCode»

Crea una clase de datos `Lesson` con los campos: nombre (String), profesor (String), aula (String), día de la semana (Int, 1-7), número de lección (Int, 1-8). Implementa una función que tome una lista de lecciones y devuelva una nueva lista donde se eliminen los duplicados (las lecciones se consideran idénticas si todos sus campos coinciden). El orden de los elementos restantes debe conservarse como en la lista original. Está garantizado que los nombres y profesores no contienen espacios.

Formato de entrada

En la primera línea, un entero N (1 ≤ N ≤ 1000) — el número de clases. Luego N líneas, cada una en el formato: "Nombre Profesor Aula DiaDeLaSemana NumeroDePar" (separados por espacios).

Formato de salida

Muestra K — la cantidad de lecciones únicas, luego K líneas en el mismo formato que en los datos de entrada.

main.kt