Leap Year -HackerRank solution

Leap Year

An extra day is added to the calendar almost every four years as February 29, and the day is called a leap day. It corrects the calendar for the fact that our planet takes approximately 365.25 days to orbit the sun. A leap year contains a leap day.

In the Gregorian calendar, three conditions are used to identify leap years:

  • The year can be evenly divided by 4, is a leap year, unless:
    • The year can be evenly divided by 100, it is NOT a leap year, unless:
      • The year is also evenly divisible by 400. Then it is a leap year.

This means that in the Gregorian calendar, the years 2000 and 2400 are leap years, while 1800, 1900, 2100, 2200, 2300, and 2500 are NOT leap years. Source

Task

Given a year, determine whether it is a leap year. If it is a leap year, return the Boolean True, otherwise, return False.

Note that the code stub provided reads from STDIN and passes arguments to the is_leap function. It is only necessary to complete the is_leap function.

Input Format

Read  year, the year to test.

Constraints

1900<=year<=10^5

Output Format

The function must return a Boolean value (True/False). Output is handled by the provided code stub.

Sample Input 0

1990

Sample Output 0

False

Explanation 0

1990 is not a multiple of 4 hence it’s not a leap year.

Code:

def is_leap(year):
    if year%400==0:
        return True
    
    if year%100==0:
        return False
    if year%4==0:
        return True
    
    return False

This is a Python function that determines if a given year is a leap year or not. It is a solution to the “Leap Year” problem on Hackerrank.

The function takes an integer year as input and first checks if the year is divisible by 400. If it is, then the year is a leap year and the function returns True.

If the year is not divisible by 400, the function checks if it is divisible by 100. If it is, then the year is not a leap year and the function returns False.

If the year is not divisible by 400 or 100, the function checks if it is divisible by 4. If it is, then the year is a leap year and the function returns True. Otherwise, the year is not a leap year and the function returns False.

This function is based on the Gregorian calendar rule for leap years, which states that a year is a leap year if it is divisible by 4, unless it is divisible by 100 but not by 400.

Disclaimer: These problems are originally created and published by HackerRank, we only provide solutions to those problems.Hence, doesn’t guarantee the truthfulness of the problem. This is only for information purposes.

Leave a Comment