在一个 的方格表中填入 和 ,使得任意一个 的方格表中都恰有一个 ,则满足要求的填法共有种。
分数写 a/b,根号写 √ 或 sqrt,π 写 pi 也可以。
先独立尝试,再展开工具说明与想法来源。
滑动窗口相减和状态分类均为初等方法;“相位”只是1出现在三列中的哪一类,不代表整个方格都同时三周期。
想法从哪来:先比较两个只平移一列的窗口,大量格子会相消。 固定三行的列和因此以3为周期,且每周期总和为1,所以可以用唯一的列相位描述。再将三行带向下移动一行:若相位不变,进入行等于离开行;若相位改变,共用的两行就只能全为零。 这个零行缓冲说明变化不能任意发生,变化位置被限制在同一个模3类。于是分“相位从未改变”和“至少改变一次”计数:前者各活跃列可独立选择行相位,后者由变化位置、初始相位与新相位决定。先建立唯一对应,再相乘计数,避免重漏。
固定连续三行,考察各列在这三行中的列和。相邻 方格的和相减后,列和呈三周期,由此可按“周期相位是否变化”完整计数。
记第 行第 列的数为 。对每个 ,令
题设给出
相邻两式相减得 。又 是非负整数且和为 ,故存在唯一的 ,使得
比较相邻的三行带。若 ,则逐列相减得到
若 ,共同出现的第 行只能同时支撑两个不同的列剩余类,故这两行全为零;第 行恰在 处为 ,第 行恰在 处为 。
因此,一旦相位在位置 发生变化,随后两处不能变化;继续利用 可知所有相位变化位置必须模 同余。反之,任取满足这一条件的非空变化位置集合,并在每次变化时把相位改为另外两个值之一,上述规则唯一确定一个合法方格表。
在 的七个相邻位置中,非空且所有元素模 同余的变化位置集合,按大小分别有
种。初始相位有 种,每次变化有 种新相位,所以非常相位的填法数为
若相位始终不变,则每个允许出现 的列可以独立选择三种行剩余类。三种列相位在十列中分别出现 次,故此时共有
种。总数为
相位不变与至少变化一次互斥且穷尽;变化位置的三个模类大小为 ,上述单点、双点、三点计数已逐类覆盖。
“每个滑动窗口的和固定”首先应相减得到周期关系;再把周期的相位变化转化为稀疏的状态切换,可避免对 个表格直接枚举。
须从三行带和发现唯一列相位,并证明所有相位变化位置同余这一全局分类原则,之后分别计常相位和变相位填法。
已记下,谢谢!