Classe Time
Il tuo compito è creare una classe Time con tre attributi: hours, minutes e seconds.
Devi implementare due metodi magici, __add__ e __sub__, che permetteranno rispettivamente l'addizione e la sottrazione di due istanze della classe Time. Il risultato di queste operazioni dovrebbe essere una nuova istanza di Time.
Dovresti anche implementare il metodo magico __str__ che restituisce una stringa contenente hours, minutes e seconds separati da uno spazio.
Devi gestire i casi in cui i minuti o i secondi superano 59 o scendono sotto 0, così come i casi in cui le ore superano 24 o scendono sotto 0.
Nel metodo __add__, se i secondi, i minuti o le ore superano la soglia, dovrebbero ripartire da 0 e incrementare di 1 l'unità superiore (minuti o ore). Le ore dovrebbero sempre rimanere nell'intervallo da 0 a 23.
Allo stesso modo, nel metodo __sub__, se i secondi o i minuti scendono sotto 0, dovrebbero ripartire da 59 e decrementare di 1 l'unità superiore (minuti o ore). Se le ore scendono sotto 0, dovrebbero ripartire da 23.
Input | Output |
|---|---|
| 1 4 15 |
Nota: Le ore sono rappresentate in formato 24 ore.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB