Given a year year and a month month, return the number of days of that month.
Example 1:
Input: year = 1992, month = 7
Output: 31
Example 2:
Input: year = 2000, month = 2
Output: 29
Example 3:
Input: year = 1900, month = 2
Output: 28
Constraints:
1583 <= year <= 2100
1 <= month <= 12
Solutions
Solution 1: Determine Leap Year
We can first determine whether the given year is a leap year. If the year can be divided by \(4\) but not by \(100\), or can be divided by \(400\), then this year is a leap year.
February has \(29\) days in a leap year and \(28\) days in a common year.
We can use an array \(days\) to store the number of days in each month of the current year, where \(days[0]=0\), \(days[i]\) represents the number of days in the \(i\)th month of the current year. Then the answer is \(days[month]\).
The time complexity is \(O(1)\), and the space complexity is \(O(1)\).