可以使用蔡勒公式(Zeller's Congruence)来计算给定日期是星期几。以下是 Python 代码实现:
def day_of_week(day: int, month: int, year: int) -> str:
days = ["Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
if month < 3:
month += 12
year -= 1
K = year % 100
J = year // 100
h = (day + (13 * (month + 1)) // 5 + K + (K // 4) + (J // 4) + (5 * J)) % 7
return days[h]
# 示例
print(day_of_week(1, 4, 2024)) # 应该返回 "Monday"
这个实现使用了蔡勒公式来计算星期几。输入 day=1, month=4, year=2024
时,它会正确返回 "Monday"
。你可以尝试其他日期来测试它的正确性。