Classe Time
Votre tâche est de créer une classe Time
avec trois attributs : hours
, minutes
et seconds
.
Vous devez implémenter deux méthodes magiques, __add__
et __sub__
, qui permettront respectivement l'addition et la soustraction de deux instances de la classe Time
. Le résultat de ces opérations doit être une nouvelle instance de Time
.
Vous devez également implémenter la méthode magique __str__
qui renverra une chaîne de caractères avec hours
, minutes
et seconds
séparés par un espace.
Vous devez gérer les cas où minutes
ou seconds
dépassent 59
ou sont inférieurs à 0
, ainsi que les cas où hours
dépassent 24
ou sont inférieurs à 0
.
Dans la méthode __add__
, si seconds
, minutes
ou hours
dépassent le seuil, ils doivent revenir à 0
et incrémenter l'unité supérieure suivante (minutes
ou hours
) de 1
. hours
doit toujours rester dans la plage de 0 à 23.
De même, dans la méthode __sub__
, si seconds
ou minutes
deviennent inférieurs à 0
, ils doivent revenir à 59
et décrémenter l'unité supérieure suivante (minutes
ou hours
) de 1
. Si hours
devient inférieur à 0
, il doit revenir à 23
.
Entrée | Sortie |
---|---|
| 1 4 15 21 27 15 |
Remarque : Les heures sont représentées au format 24 heures.
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB