“我今天没笑。”
林辰嘴上否认,手已经把题本拉到面前。
苏晚晴没有拆穿。
“先读题。”
夜读区里坐着十几个人。
有人戴着耳机背单词,有人趴在桌上改错题。空调出风口偶尔发出轻微震动,管理员推着还书车从过道经过,车轮碾过地砖接缝,咯噔一声。
林辰低头看题。
题目不长。
从一到十这十个正整数中选出四个,要求任意两个数都不相邻,问一共有多少种选法。
他看完以后,抬起头。
“这算竞赛题?”
“基础题。”
“看起来不难。”
“那你做。”
林辰在草稿纸上写出一、二、三、四。
第一组可以选一、三、五、七。
第二组一、三、五、八。
再往后,他写到一、四、六、九时,发现这样列下去很容易漏。
他把前面的组合全部划掉。
“不能一个个数。”
“嗯。”
“那就分类?”
“可以。”
“按第一个数分类?”
“也可以。”
林辰列出第一项选一、选二、选三。
写到选三时,他发现后面的可选范围又要重新拆。
草稿纸很快多了几条交叉线。
苏晚晴等他停笔,才问:
“你卡在哪里?”
“我知道它肯定有简单方法。”
“这是结论。”
“你问的是哪里?”
“嗯。”
林辰将笔放下。
“我不知道为什么要想到那个方法。”
苏晚晴把题本转向自己。
她在纸上设四个被选中的数分别为:
x?<x?<x?<x?。
“因为任意两个数不能相邻,所以相邻两项至少差二。”
“这个我知道。”
“令y?等于x?,y?等于x?减一,y?等于x?减二,y?等于x?减三。”
林辰看着那一排字母。
“然后它们就变成从一到七里任选四个。”
“对。”
“答案是三十五。”
“嗯。”
苏晚晴把笔递还给他。
“现在自己写一遍。”
林辰没有接。
“你讲得对,但我听不进去。”
附近有人翻书的动作停了一下。
林辰把声音压低。
“我不是说你讲错了。每一步都对,减一、减二、减三也能看懂。”
“可你不知道为什么要减。”
“对。”
“刚才还能跟上,等我自己做,第一步还是只会列。”
苏晚晴看了一眼他划掉的几组数字。
“那你平时遇到这种问题,会怎么想?”
“平时不会有人让我从十个数里选四个,还规定不能挨着。”
“换成你会遇到的。”
“我会遇到什么?”
“你自己想。”
林辰重新看题。
十个位置。
选四个。
不能相邻。
他拿起笔,没有继续写数字,而是在纸上画了一条横线。
横线上隔一段画一个小方框。
一共十个。
苏晚晴看着他。
“这是什么?”
“一条街。”
“题目里没有街。”
“现在有了。”
林辰在每个方框下面写上编号。
“一到十是十家店。”
“然后?”
“水果店要在其中四家门口放促销牌。”
“为什么是水果店?”
“我比较熟。”
“促销牌为什么不能相邻?”
“相邻两家都放会挡路。”
苏晚晴没有纠正这个临时设定。
“继续。”
林辰先在第一、三、五、七家门口画了四个圆圈。
“最挤的时候是这样。”
“每两个牌子中间,至少空一家店。”
他用笔在前三个圆圈后面各画了一道短竖线。
“那我先不管牌子具体放哪里。”
“把前三个牌子后面必须空出来的店,跟牌子绑在一起。”
纸上变成三个“圆圈加空格”的小组,以及最后一个单独的圆圈。
“这四个牌子和三个必须留下的空位,一共先占七家店。”
“剩下三家呢?”苏晚晴问。
“可以放在最前面、最后面,也可以塞进几个牌子中间。”
林辰停了一下。
“等等。”
他把原来的十个方框划掉,重新画了七格。
“如果把那三个必须空出来的位置先折掉,十家店就压成七格。”
“然后只要从七格里选四格放牌子。”
“因为折掉的位置会自动跟在前三个牌子后面。”
他抬头。
“这样是不是也是三十五?”
苏晚晴没有立即回答。
她将草稿纸拉到自己面前,从第一格开始检查。
如果选压缩后的第一、二、三、四格,恢复后对应一、三、五、七。
如果选第一、二、三、五格,对应一、三、五、八。
映射没有重复。
也没有遗漏。
她拿笔在七格下面写出:
c??=35。
“本质上和刚才的变量平移一样。”
林辰点头。
“可我现在知道为什么要减一、减二、减三了。”
“因为你把强制间隔压缩掉了。”
“对。”
“你刚才那一排y,我看着像老师突然宣布新规定。”
“这条街至少告诉我规定是怎么来的。”
苏晚晴又给他写了一道类似的题。
从一到十二中选出五个互不相邻的整数。
“现在呢?”
林辰没再画完整的街。
只在草稿纸边缘画了十二个小短格。
“十二个位置。”
“五个要选的数之间至少留四个空位。”
“先压掉四个,剩八个位置。”
“从八个里选五个。”
他说完,自己把答案写出来。
c??。
“对。”苏晚晴说。
林辰盯着那个“对”字。
“再来一个。”
“先把刚才的方法写成一般形式。”
“直接写公式?”
“先用你的话写。”
林辰想了想。
在纸上写:
【从n个位置中选k个,彼此不相邻。先给前k-1个选中位置各绑定一个空位,再压缩掉这些强制空位。剩下n-k+1个位置,从中选择k个。】
写完以后,他自己读了一遍。
“有点长。”
“但你知道每句话是什么意思。”
“考试时写这个会不会太像讲水果店?”
“把水果店删掉。”
“那条街呢?”
“可以留在草稿上。”
林辰拿笔把正式答案重新整理。
没有y?、y?。
也没有直接抄苏晚晴的标准步骤。
他先说明压缩强制间隔,再写组合数。
步骤不算最短,却很清楚。
苏晚晴从头看到尾。
“成立。”
林辰靠在椅背上。
“原来竞赛基础也不是每道题都要突然变聪明。”
“突然变聪明不可靠。”
“那靠什么?”
“把看不懂的问题,换成你能处理的。”
“这就是你的双人格补课法?”
“现在才算开始有一点用。”
林辰伸手拿下一道题。
“这题能不能也画成街?”
“这是一道几何题。”
“那就画成小区。”
苏晚晴抬眼看他。
林辰自己先笑了一声。
“开玩笑的。”
他把题翻过去,重新看组合题。
“我还是先把这个弄明白。”
接下来的半个小时,他连续做了四道相似题。
第三道条件发生变化,要求三个被选位置中不能出现连续三项。
林辰原本还想继续压缩,算到一半发现会重复。
他没有硬套。
在错误步骤旁边写:
【这条街修不通。】
苏晚晴看见后,用笔在下面补:
【换路。】
两个人试着按末位是否选中分类。
这次林辰仍然慢。
但他没有等她把完整答案写出来。
苏晚晴只提示第一层,他自己继续拆第二层。
夜读区的人渐渐少了。
管理员开始关闭靠窗一侧的灯,只保留中间几排。
林辰揉了揉写酸的手指。
口袋里的玉佩贴着校服布料,传来一阵温热。
不烫。
也没有那种突然脱离身体的眩晕感。
“玉佩热了。”他说。
苏晚晴伸手碰了一下自己的口袋。
“我的也是。”
“要记录吗?”
“持续多久?”
林辰看了一眼墙上的钟。
“刚发现。”
两个人等了不到半分钟。
温度缓慢降回去。
没有共感加重,也没有视线重影。
苏晚晴在观察纸上写了一行:
【高强度思考后短暂温热,无其他异常。】
林辰看着“高强度思考”几个字。
“这句话能不能保留?”
“为什么?”
“证明我刚才确实高强度了。”
“记录的是玉佩。”
“顺便也能证明脑子用过。”
苏晚晴把观察纸收起来。
“你想证明给谁看?”
“前世的数学老师。”
“他看不到。”
“所以才敢证明。”
她没有评价。
嘴角却比刚才松了一点。
林辰重新拿起第一张草稿。
“你刚才说,本质上还是变量平移。”
“嗯。”
“我能不能试着用你的方法讲一遍?”
“可以。”
“但我不想一上来就写字母。”
“那先讲你的街。”
“讲完再翻成公式。”
夜读区前面有一块供小组讨论使用的小黑板。
林辰拿着草稿走过去。
在黑板上画出十个方格。
“十家店,四块牌子。”
苏晚晴坐在下面听。
林辰讲到“压缩强制空位”时,第一次说得有点乱,把最后一块牌子也绑定了空格。
苏晚晴没有直接打断。
等他说完,才问:
“最后一块后面必须空吗?”
林辰看着黑板。
“不是。”
他擦掉最后一道短线。
“所以只压三个。”
第二遍顺了很多。
他把街道图擦去一半,在旁边写出x和y的对应关系。
“原来你刚才减的,就是这三个位置。”
“对。”
“那我以后看到不相邻,是不是都可以先想压缩?”
“先确认限制是否完全一样。”
“不能见到街就修路。”
“明白。”
林辰放下粉笔。
苏晚晴走到黑板旁,接过他手里的草稿纸。
她用林辰的身体重新把那幅图画了一遍。
动作比他快,线条也直得多。
“你画这么整齐,反而不像我。”
“现在是验证方法。”
“验证完呢?”
“你自己练。”
她按照林辰刚才的解释,把公式重新写在图旁边。
从压缩位置到组合数,整个过程只用了五行。
林辰站在桌边看了半天。
“你把我的路修得太标准了。”
“路能走就行。”
“那你觉得这个方法怎么样?”
苏晚晴看着黑板上的七个方格。
又看向草稿纸上那句“这条街修不通”。
她第一次没有把这种生活化的理解方式归为临时记忆技巧。
它不够简洁。
甚至有些绕。
可林辰能从具体场景里迅速找出限制,再把限制翻译回数学语言。
这不是苏晚晴习惯的路径。
也不等于没有价值。
“你这方法……”
她停了一下。
“能算。”
旁边书架后传来一声很轻的书页摩擦。
沈泽言停住脚步。
他听见了最后一句。