Problème
Une année divisible par 4 est bissextile, sauf si elle est également divisible par 100. Les années divisibles par 400 sont bissextiles malgré cette exception. Appliquez cette règle arithmétique à chaque année autorisée en entrée.
Implémentez leap_year(year).
Entrée
year : L'année à vérifier.
Sortie
Retournez true si l'année est bissextile, sinon false.
Contraintes
1 ≤ year ≤ 9999.
Exemples
Entrée :
year = 2024
Sortie attendue :
expected = True
Entrée :
long long year = 2024;
Sortie attendue :
bool expected = true;
Entrée :
long year = 2024;
Sortie attendue :
bool expected = true;
Explication
2024 est divisible par 4 et non par 100.
Entrée :
year = 2100
Sortie attendue :
expected = False
Entrée :
long long year = 2100;
Sortie attendue :
bool expected = false;
Entrée :
long year = 2100;
Sortie attendue :
bool expected = false;
Explication
2100 est divisible par 100 mais pas par 400, donc l'exception du siècle s'applique.
Comment l'aborder
Essayez d'abord seul, puis ouvrez les indices un par un.
Indice 1
La plupart des années suivent la règle divisible par 4, mais les siècles font exception.
Indice 2
Une année divisible par 400 reste une année bissextile, même si elle est aussi divisible par 100.
Indice 3
Teste l’exception avant de rejeter les années de siècle, sinon tu risques de mal classer des années comme 2000.
Complexité attendue
temps O(1), espace supplémentaire O(1)
Références
Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.