Étant donné une MM/DD
date ( 12/24
) et une plage de dates de début / fin ( 11/01 - 06/24
), déterminez si la date se situe dans la plage de dates indiquée.
Les plages de dates peuvent être séquentielles ( 05/01 - 11/01
) ou remonter à l'année suivante ( 11/01 - 05/01
).
Exemples:
12/24
est dans11/01 - 06/24
= True06/24
est dans11/01 - 06/24
= True06/24
est dans06/24 - 06/24
= True06/24
est11/01 - 06/23
dedans = Faux07/24
est11/01 - 06/24
dedans = Faux07/24
est dans05/01 - 11/01
= True07/24
est dans07/23 - 07/20
= True
Les années ne comptent pas. La date et / ou la plage de dates est supposée s'appliquer à toute année passée ou future.
La date de fin sera toujours postérieure à la date de début. Si la date de fin est numériquement inférieure à la date de début, nous supposons que nous terminons l'année suivante.
Les trois variables d'entrée peuvent être via n'importe quelle méthode (args, HTTP, stdin, etc.) et dans n'importe quel format (chaîne, JSON, tableau, etc.)
La réponse peut être boolean
ou n'importe quelle forme de chaîne oui / non / correcte / etc. Le code le plus court gagne.
Vous ne pouvez pas simplement passer des arguments à une fonction intégrée.
11/01 - 06/24 includes 06/24?
['06', '24']
si vous avez raison []
ou que voulez-vous dire?
2017
et l'année prochaine 2018
. Comment sommes-nous censés déterminer ce 06/24
moyen 2018
et donc devrait être True
plutôt que 2017
et donc False
parce que c'est avant 11/01
?
date > start & date < end
" - Alors certains de vos cas de test sont erronés. Je pense que vous voulez dire start<=date<=end
.
['MM', 'DD']
?