对于公历来说,有两个因素会影响每年日历的日期排布。一个是一年的起点,也就是元旦的位置,比方说 2021 年的元旦是周五,而 2020 年的元旦是周三,那么这两年的日历就不可能一模一样。另一个因素是该年份是否置闰,比如 2016 年的元旦也是周五,但是 2016 年是闰年,2021 年是平年,那么虽然从 1 月 1 日到 2 月 28 日两年的排布是一样的,但因为 2016 年有 2 月 29 日,那么从 3 月份开始,两个年份的日历就会错开。
那么在这两个因素共同影响下,怎样来判断两个年份的日历能不能重复呢?
首先,我们要看两个年份的元旦相隔的天数是否为 7 的整数倍。比方说最近网传相隔 50 年的 1971 年的日历和 2021 年的日历发生重复,从 1971 年 1 月 1 日到 2021 年 1 月 1 日,一共经过了 18263 天。18263 正好是 7 的 2609 倍,这表示两个年份的元旦正好相差 2609 周,也就是说两个元旦在一周当中的位置是一样的。
其次,我们要判断两个年份是否同为闰年或者同为平年。1971 年和 2021 年都是平年,这意味着 1971 年和 2021 年的每一天都相隔了完整的 2609 周。体现在日历上,就是 1971 年和 2021 年的日历是一模一样的。
实际上,等日历重复不需要 50 年那么久,从 1971 年到 2021 年的 50 年间,还有 1982 年、1993 年、1999 年与 2010 年这几个年份的日历和 2021 年完全重复,也就是说,上一个与 2021 年日历排布一致的年份是 2010 年,如果你手上还有 11 年以前的日历,现在可以拿出来凑合着用了。而 6 年以后的 2027 年,同样的日历排布会再度出现。
一周一共 7 天,而公历分闰年和平年,那么在理论上就会有 14 种日历排布形式。2020 年的日历别急着丢掉,因为 2048 年还用得上。如果你有集齐 14 种日历后再也不买日历的想法,在保留去年和今年日历的基础上,你还需要 2022~2026、2028~2030、2032、2036、2040、2044 这些年份的日历,或者你可以找找家里还有没有 2014~2019、2012、2011、2008、2004、2000、1996 这些年份的日历。
不过以上集齐 14 年日历就能一劳永逸的说法,仅限于纯公历日历的情况。现实中我们常见的日历往往会附带农历日期,题主的补充里也提到希望是农历和公历完全相同,显然这就大大降低了日历重复利用的可能性。比方说现行农历采用的是定朔法,依据实际天象决定一个月何时开始。这样即使两个年份同为农历平年或农历闰年,每个月的长度可能也不会完全一致。
虽说加入农历后日历重复的规律就不好捉摸了,但是如果参考农历里面一条粗略的置闰周期——即十九年七闰,我们可以近似认为农历的月份排布每 19 年会重复一次。
那么这个 19 年周期有没有可能与上述 14 种纯公历日历排布产生什么化学反应呢?
答案是有的。在同为平年或闰年的前提下,相隔 95 年的两个年份不仅公历日期排布一致,在农历日期的排布上也有很高的相似度。比如 2021 年往前 95 年是1926 年,两者在公历排布一致的基础上,1 月 1 日~4 月 11 日的农历日期相差 1 天,4 月 12 日~10 月 5 日的农历日期完全一致,10 月 6 日~12 月 31 日的农历日期相差 1 天。也就是两个年份在大约半年的时间内,不论是公历日期还是农历日期,排布完全一致[1]。