from datetime import date, timedelta def most_frequent_days(a): week = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"] days = {"Monday": 0, "Tuesday": 0, "Wednesday": 0, "Thursday": 0, "Friday": 0, "Saturday": 0, "Sunday": 0} plus_a_day = timedelta(days=1) first_date = date(a, 1, 1) last_date = date(a, 12, 31) while first_date <= last_date: days[week[first_date.weekday()]] += 1 first_date += plus_a_day return [day for day, count in days.items() if count == max(days.values())] if __name__ == '__main__': print("Example:") print(most_frequent_days(1084)) # These "asserts" are used for self-checking and not for an auto-testing assert most_frequent_days(1084) == ['Tuesday', 'Wednesday'] assert most_frequent_days(1167) == ['Sunday'] assert most_frequent_days(1216) == ['Friday', 'Saturday'] assert most_frequent_days(1492) == ['Friday', 'Saturday'] assert most_frequent_days(1770) == ['Monday'] assert most_frequent_days(1785) == ['Saturday'] assert most_frequent_days(212) == ['Wednesday', 'Thursday'] assert most_frequent_days(1) == ['Monday'] assert most_frequent_days(2135) == ['Saturday'] assert most_frequent_days(3043) == ['Sunday'] assert most_frequent_days(2001) == ['Monday'] assert most_frequent_days(3150) == ['Sunday'] assert most_frequent_days(3230) == ['Tuesday'] assert most_frequent_days(328) == ['Monday', 'Sunday'] assert most_frequent_days(2016) == ['Friday', 'Saturday'] print("Coding complete? Click 'Check' to earn cool rewards!")