OI集训队的选拔结果出来了。他和折枝一起站在公告栏前——准确地说,是他站着,折枝蹲在他旁边,用手撑着下巴,看着那张红底黑字的名单。
他的名字在倒数第三个。通过了,刚好压线。
「过了。」他说,语气里带着不确定——像在问,又像在陈述。
「嗯,看到了。」折枝站起来,拍了拍膝盖上不存在的灰,「走吧,明天开始训练了。」
他没有动。他盯着那张名单,看着后面那几个他没有通过的名字。他和他们之间的差距,可能只有一道题。如果那道题他当时做出来了,他会比现在更靠前几名的位置。他不知道为什么要想这些——明明已经过了。但他就是忍不住去想那些"如果"。
折枝已经走出几步了,回头看他没跟上来,又走回来。
「你在看什么?」
「没什么。」
他转身跟她走。
走廊很长。下午的阳光从西边的窗户照进来,把他们的影子拉得很长。他的影子在地上,实实的,深色的。她的影子很浅,几乎看不见。
他注意到了这件事。他没有说出来。
集训的第一天,机房坐满了人。
他从来不知道学校有这么多人在搞信息竞赛。二十几个男生——和几个女生——坐在三排电脑前,各自开着IDE,屏幕上是各种颜色的代码界面。老师站在最前面讲图论,从最基础的DFS开始,讲树的遍历,讲递归的栈空间。
他坐在靠窗的位置。折枝坐在他旁边的机箱上——那是她固定的位置。她用一只手撑着下巴,另一只手在空中画着什么,像是在跟着老师的思路画图。
「注意听。」她小声说。
「我在听。」
「你不在。你在想刚才那道题。」
她是对的。老师在讲一个新的知识点,但他还在想前一道他自己没做出来的题。
老师说到"递归的深度如果超过系统栈的限制,会导致栈溢出",然后在黑板上画了一个示意图——一个函数调用自己,一层一层地往下,像一个没有尽头的楼梯。
折枝盯着那个图看了很久。
「你觉不觉得,」她说,「递归和记忆很像。」
「什么意思?」
「你回忆一件事的时候,会想到另一件事,然后想到另一件事,然后越陷越深——直到你忘了自己最开始在想什么。」
他想了想,好像确实是这样。
「但递归有终止条件。」他说。
折枝转过头,看着他。窗外的光落在她的侧脸上,她的表情很平静。
「人的回忆没有。」她说。
他没有接话。他不知道为什么她突然说这个。
老师已经开始讲下一部分了。他转回去,继续听课。但那句话留在了他脑子里。
人的回忆没有终止条件。
他不知道她是在说谁。
那天的训练结束之后,他留在机房没有走。
他打开了一个新的文件,想试着写一道关于动态规划的题。题目描述很简单——给定一组数,找出最大的子段和。但他盯着屏幕,光标一闪一闪的,他一个字也没打出来。
折枝没有走。她坐在他旁边,安静地等着。她知道他需要时间。
他想了很久,开始打第一行代码。然后删掉。然后打另一行。又删掉。
「你这里想复杂了。」折枝说。
她伸出手,指向屏幕的某个位置——她的手穿过了屏幕,但她指的那个位置是对的。
「你不需要用一个二维数组来存。你只需要知道前一个状态。」
「前一个状态?」
「嗯。你当前这一步的最优解,只取决于上一步的最优解——加上当前这个数,或者不加。」她说,「因为过去的状态已经确定了,你不需要保留所有历史记录。你只需要保留那个最优的。」
他沉默了一会儿,然后说:「但如果没有前一个状态呢?」
「那就用当前这个数作为新的开始。」折枝说,「有些序列,只能从中间开始。」
他愣了一下。然后他低下头,按照她说的重新写了一遍。
这次跑通了。
他看着屏幕上输出的结果——正确的。他靠回椅背上,长长地呼出一口气。
折枝在他旁边,轻声说了一句:
「状态转移。」
「什么?」
「这个叫状态转移。你从上一个状态推导出下一个状态。每一步都基于前一步的结果。」
她在黑暗中停顿了一下。她的声音在安静的机房里显得很轻,像一根羽毛落在键盘上。
「没有过去,你如何推导未来。」
他没有抬头。但他把这句话记住了。
那句话后来在他脑子里反复出现——在她不在的时候,在他一个人面对屏幕的时候,在他不知道该怎么办的时候。
他不知道她是在讲算法,还是在讲别的东西。
那天晚上,他们离开机房的时候,天已经全黑了。
走廊里没有人。声控灯在他们走过的时候亮起来,在他们身后又熄灭。整栋楼安安静静的,只有他们的脚步声。
他走在前面,她跟在他后面。他听到自己的脚步声是实的——哒,哒,哒。她的脚步声他听不到。
他们走到楼梯口的时候,他停了一下。
「折枝。」
「嗯?」
「你今天说的——状态转移。」
「怎么了。」
「你是不是在说别的事。」
沉默。楼梯间的声控灯灭了一盏,又亮起来。
「你觉得呢。」她说。
他转过身。她站在他下面两级台阶的地方,比他矮了一截。她抬起头看着他。走廊尽头有一扇窗,月光从外面照进来,银白色的,落在她肩膀上。
他忽然发现,她身上那件浅粉色的卫衣,在月光下看起来几乎是白色的。
「我不知道。」他说。
「那就先把它当成算法。」她说,「这样比较简单。」
她没有等他回答,从他身边走过去了。
他站在那里,看着她的背影在昏暗的走廊里越来越远,然后快步跟了上去。
他没有再问。