方块日历

大过年的水一篇。

这是 5 年前的一个问题:利用四个骰子组合出一年 12 个月共 365 天。虽然当时已经有解了,就是题图的这四个方块,但毕竟是想通过自己思路来解决。

一开始想的笨办法,穷举之,0101 —— 1231 这些都列出来,然后暴力组合,但进一步想就觉得不太现实。

小技巧

首先可以确定的一点是 6 和 9 是可以互换的,这样我们就只需要考虑 0 —— 8 这 9 个数的排列了。

划分子问题

然后想一想,月份一共就 12 个数,算是两个骰子排出一个月 31 天的子问题,所以先尝试一下两个骰子能排出多少天,不够的天数再用剩余俩骰子凑凑看。

用两枚骰子排出天数

十位的数字也就 0 1 2 3 这 4 种,而且 3 还不常见,所以猜测每个骰子都会有 0、1、2 这三个数,剩下来还有 3、4、56、7、8,正好可以分布在两枚骰子上!

两枚骰子排出天数

解决了

这样排出天数后,如法炮制就可得到月数,所以证明四枚骰子是完全可以排列出一年 12 个月 365 天的!
等有空时写个 web 版的方块日历~