# Solving Leetcode Interviews in Seconds with AI: Day of the Year


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "1154" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> Given a string date representing a Gregorian calendar date formatted as YYYY-MM-DD, return the day number of the year.   Example 1:  Input: date = "2019-01-09" Output: 9 Explanation: Given date is the 9th day of the year in 2019.  Example 2:  Input: date = "2019-02-10" Output: 41    Constraints:  date.length == 10 date[4] == date[7] == '-', and all other date[i]'s are digits date represents a calendar date between Jan 1st, 1900 and Dec 31st, 2019.  

	# Explanation
	Here's a solution to determine the day number of the year for a given date string:

*   **Parse the date:** Extract the year, month, and day from the input string.
*   **Calculate day number:** Iterate through the months, adding the number of days in each preceding month to the day. Account for leap years when calculating days in February.
*   **Return the result:** Return the calculated day number.

*   Runtime Complexity: O(1). Storage Complexity: O(1).

	
	# Code
	```python
	def dayOfYear(date: str) -> int:
    year = int(date[:4])
    month = int(date[5:7])
    day = int(date[8:])

    days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

    if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
        days_in_month[1] = 29

    day_number = 0
    for i in range(month - 1):
        day_number += days_in_month[i]

    day_number += day

    return day_number
	```
			
