Clase Time
Tu tarea es crear una clase Time con tres atributos: hours, minutes y seconds.
Debes implementar dos métodos mágicos, __add__ y __sub__, que permitirán la suma y resta de dos instancias de la clase Time respectivamente. El resultado de estas operaciones debe ser una nueva instancia de Time.
También debes implementar el método mágico __str__ que devolverá una cadena con hours, minutes y seconds separados por un espacio.
Tienes que manejar los casos en que los minutos o segundos superen 59 o estén por debajo de 0, así como los casos en que las horas superen 24 o estén por debajo de 0.
En el método __add__, si los segundos, minutos u horas exceden el límite, deben reiniciarse a 0 e incrementar la siguiente unidad superior (minutos u horas) en 1. Las horas siempre deben mantenerse en el rango de 0 a 23.
De manera similar, en el método __sub__, si los segundos o minutos caen por debajo de 0, deben reiniciarse a 59 y decrementar la siguiente unidad superior (minutos u horas) en 1. Si las horas caen por debajo de 0, deben reiniciarse a 23.
Entrada | Salida |
|---|---|
| 1 4 15 |
Nota: Las horas se representan en formato de 24 horas.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB