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
t1 = Time(23, 15, 45); t2 = Time(1, 48, 30); print(t1 + t2); print(t1 - t2);
1 4 15 21 27 15
Nota: Le ore sono rappresentate in formato 24 ore.
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue