Given a date, return the corresponding day of the week for that date.

The input is given as three integers representing the `day`

, `month`

and `year`

respectively.

Return the answer as one of the following values `{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}`

.

## Example 1:

Input:day = 31, month = 8, year = 2019Output:"Saturday"

## Example 2:

Input:day = 18, month = 7, year = 1999Output:"Sunday"

## Example 3:

Input:day = 15, month = 8, year = 1993Output:"Sunday"

**Constraints**:

The given dates are valid dates between the years`1971`

and`2100`

.

```
class Solution(object):
def dayOfTheWeek(day, month, year):
week = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
arr = [ 0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4 ]
year -= month < 3
return week[((year + int(year / 4) - int(year / 100) + int(year / 400) + arr[month - 1] + day) % 7)]
# answer 1
day = 31
month = 8
year = 2019
print(Solution.dayOfTheWeek(day, month, year))
# answer 2
day = 18
month = 7
year = 1999
print(Solution.dayOfTheWeek(day, month, year))
# answer 3
day = 15
month = 8
year = 1993
print(Solution.dayOfTheWeek(day, month, year))
```