leetcode-一周中的第几天

如何不使用自带的公式自己造轮子获取一周的星期几呢,可以使用吉姆拉森日期计算公式。

public function __construct()
    {
        $this->weeks = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
    }

    /**
     * 基姆拉尔森日期公式
     * @param int $day
     * @param int $month
     * @param int $year
     * @return mixed
     */
    public function solution(int $day, int $month, int $year)
    {
        return $this->weeks[($day + 2*$month + 3*($month+1)/5 + $year + $year/4 - $year/100 + $year/400) % 7];
    }
Visits: 97

发表评论

电子邮件地址不会被公开。 必填项已用*标注