比赛倒计时两天,真正的挑战,才刚刚开始。
杨雨薇本以为社团招新后能平稳准备竞赛,然而一场意外打破了这份平静。
经过一上午的学习,下午两点不到,杨雨薇便轻轻合上了笔记本,小心翼翼地拉好笔袋拉链,将整理好的错题本平稳收进书包,起身迈步,朝着计算机实验室的方向走去。
实验室的门只虚掩着一条缝,门内已经飘出低抑又焦灼的交谈声,沉甸甸地压在空气里。杨雨薇轻轻推开门,一眼便看见团队三人紧紧围在中央的主机旁,每个人眉头都拧成了疙瘩,整间屋子的气氛沉闷得近乎凝滞。桌面上凌乱散放着一沓沓模型草图与密密麻麻的数据表,显示器淌出的冷蓝光线落在他们脸上,将眼底的慌乱与无措照得格外清晰。
“核心文件打不开了。”组长陈明闻声抬头,声音压得极低,裹着一层藏不住的挫败与无力,“整个项目的核心代码……全都没了。”
杨雨薇默然放下书包,快步走到显示屏前仔细查看。项目目录内,主程序文件夹空空荡荡,就连回收站也没有任何删除痕迹,所有记录都消失得无影无踪。她神色依旧平静,缓缓开口问道:“你们最后一次保存文件,是在什么时候?”
“昨晚十一点半,我特意同步过一次本地备份。”坐在角落的林晓飞速翻查着系统日志,眉头越蹙越紧,“可我今早开机时发现,系统在凌晨一点十七分,曾异常自动唤醒过一次。”
“会不会是服务器出现了故障?”一旁的男生小周小声试探,语气里满是不安与不确定。
“我们全程用的都是本地存储,根本没有上传云端。”陈明用力摇着头,声音里裹着几分茫然与无措,“而且这次删除没有留下任何系统日志,完全不符合正常的操作逻辑。”
实验室瞬间陷入死寂,压抑的沉默在狭小的空间里缓缓蔓延,压得人喘不过气。片刻后,有人忍不住低声嘀咕:“会不会……是被人故意动了手脚?我听说三班也在做同类型的建模题,他们昨天下午还专门借用过这间机房。”
“怎么会有人做这种事?”林晓又气又急,眼底满是不解,“就算真的是被人恶意删除,我们也根本来不及重做了——正式比赛后天就要开始,现在连一点补救的时间都没有。”
“要不……我们还是退赛吧。”小周犹豫了很久,终于艰难地吐出这句话,声音轻得几乎听不清,“反正只是校内选拔,就算退赛,也不影响保研和综合测评……”
没有人应声,可那股想要放弃的动摇,却像一圈圈涟漪,在狭小的实验室里无声散开。杨雨薇安静地站在一旁,指尖无意识地轻轻摩挲着笔袋拉链,脑海里瞬间闪过社团招新那天的画面——桌角静静躺着的π徽章、赵磊温和却坚定的话语、自己重新拾起对数学热爱的那一刻。曾经的迷茫与不安早已烟消云散,此刻摆在她面前的,早已不是要不要选择的问题,而是必须坚持走下去的路。
她轻轻拉过椅子坐下,语气沉稳而笃定,没有半分慌乱:“先别追究是谁删了代码,也别纠结原因,我们现在唯一要做的,是确认文件还能不能恢复。”
话音落下,她迅速打开自己的笔记本,插上U盘,调出上周提交给指导老师的中期报告附件,语气冷静清晰:“我记得你们在报告里,附过一份验证初始参数的数据脚本,这份文件还在吗?”
陈明眼中骤然亮起一丝希望,声音带着难掩的惊喜:“在!只是这份脚本只推进到第二阶段建模,后面最核心的非线性拟合部分,完全没有留存。”
“足够了。”杨雨薇笃定地点头,目光沉稳,“至少我们能确认,项目的基础逻辑和起点没有问题。现在立刻排查本地系统日志,查清昨晚自动唤醒后,是否有异常进程启动。”
林晓立刻俯身操作键盘,指尖飞快敲击。不过几分钟,她便在任务管理器的历史记录中,捕捉到一个短暂启动的Python进程,启动时间,与系统自动唤醒的时刻分秒不差。
“是你自己写的清理脚本。”她指着屏幕上那行指令,声音里终于透出一丝释然,“你之前设了快捷键一键执行,应该是不小心误触了。”
陈明猛地一怔,悔恨瞬间涌上面容:“我……我确实写过一个临时清缓存的脚本,绑定的是Ctrl+Shift+D。昨晚走的时候没关机,大概率是背包蹭到了键盘,才把目录全清了……”
“所以不是有人恶意删除,只是误操作触发了清理脚本,把整个输出目录清空了。”杨雨薇轻轻点头,把前因后果彻底理清,“那原始代码,还有别的备份吗?”
“我手机里存过一份带注释的版本。”林晓连忙掏出手机翻找,语气里带着几分歉疚,“只是变量命名和现在不一致,整体结构也改过几版。”
“能看清核心逻辑就行。”杨雨薇立刻开始分工,语气干脆利落,没有半分拖沓,“时间已经很紧,我们必须分头推进。现在只做两件事:一是快速重建文件结构,二是补全所有缺失的模块。”
她转身走到白板前,握起马克笔,快速勾勒出模型的整体框架,再用不同色彩的笔清晰标注出可用模块与待重构区域,逻辑分明,一目了然。“非线性拟合是整个项目最核心、最复杂的部分,我来负责。陈明,你梳理前期数据处理流程,保证所有输入数据统一无误;林晓,你对照手机里的注释版代码,还原全部函数接口;小周,你提前准备技术文档模板,代码调试通就同步更新记录。”
再也没有人提起退赛二字,方才的慌乱与动摇,在这一刻烟消云散。陈明深吸一口气,打开代码编辑器,眼神重新变得坚定:“我现在就重写预处理脚本。”
杨雨薇戴上降噪耳机,不再多言,整个人沉入专注之中。她翻开数学分析笔记,找到此前订正的误差传播公式页,对照模型需求,一步步严谨推导边界条件。屏幕上代码逐行有序浮现,指尖敲击键盘的声音平稳清脆,在安静的实验室里,汇成沉稳而有力的节奏。
窗外天色缓缓沉落,实验室的顶灯自动亮起。隔壁教室传来学生陆续离场的脚步声,片刻后,走廊便重归寂静。四人中途点了外卖,餐盒静静搁在角落,却没有一人分心去吃,全都沉浸在紧张而有序的工作里。
两小时后,林晓忽然压低声音,难掩惊喜:“函数接口全部还原,可以正常对接了!”
“我这边数据处理也完成,数据流一次通过!”陈明长长舒出一口气,紧绷的眉眼终于松缓下来。
杨雨薇仍全神贯注调试着最后一段迭代算法,她敏锐察觉到原方案在高维空间中收敛性极不稳定,当即决定改用梯度截断策略优化。这意味着必须重新精确核算学习率阈值,她立刻取过纸笔,伏案快速推演,笔尖在纸上流畅划过,短短数分钟便完成全部推导。她将新参数录入程序,启动模拟运行。
屏幕上的进度条缓慢而平稳地向前推进,最终稳稳停在98.6%。运行结果稳定达标,误差值完全落在许可区间内。
“成了。”她轻声开口,语气平静无波,却自带着一股沉稳安心的力量。
另外三人同时抬眼,目光齐齐落在她的屏幕上。那一刻没有欢呼,没有呐喊,甚至连一声轻叹都没有,可所有人紧绷的肩膀都彻底松弛下来,眼底的疲惫深处,盛满了劫后余生的释然。
“要不要再复测一遍,确保万无一失?”小周小心翼翼地问。
“必须测。”杨雨薇语气笃定,没有半分犹豫,“用三组不同的初始值,分别运行验证。”
新一轮测试启动,等待的间隙里,杨雨薇起身走到窗边,端起水杯,轻轻抿了一口早已凉透的茶水。校园路灯次第亮起,暖黄的光铺满整条小路,远处操场上有学生慢跑的身影掠过,一切都平静得如同往常。可只有她心里清楚,就在刚刚那几个小时里,他们把整个团队,从放弃的悬崖边缘,硬生生拉了回来。
回到座位,她打开技术文档,开始逐字撰写说明。文字简洁精炼,逻辑环环相扣,每一个假设都有严谨支撑,每一步推导都清晰可溯。这是她一贯的坚持——答案不仅要正确,更要经得起反复推敲与追问。
陈明望着她全神贯注的侧脸,满心愧疚与自责,终于低声开口:“其实刚才我说退赛,是真的怕拖累所有人。我不是主创,只负责协助数据分析,如果因为我的失误,让大家这么久的努力全部白费,我这辈子都没法原谅自己。”
“谁都有犯错的时候。”杨雨薇头也未抬,依旧专注地敲着文档,语气轻淡却格外让人安心,“重要的从不是追责,而是及时把缺口补上。”
“可要是没有你冷静盯着日志查异常,我们这会儿说不定还在互相猜忌,认定是有人故意搞破坏。”林晓苦笑一声,仍心有余悸,“越猜心越乱,越乱越慌,根本沉不下心解决问题。”
“情绪解决不了任何事。”杨雨薇缓缓开口,字字清晰有力,“代码丢了,就想办法复原;时间紧,就拆分任务提速;一个人撑不住,就分工并肩扛。这不是什么大道理,只是我们当下最该做、也能做到的事。”
白板上的计划表,早已被密密麻麻的对勾覆盖大半,只剩最后一项“整体联调”还未勾选。但杨雨薇心中早已笃定——明日上午完成最终压力测试,下午提交初稿,时间充裕,从容有余。
她摘下耳机,轻轻活动了一下僵硬的脖颈,轻声安排:“今天就到这里吧。大家都累了,回去好好休息,明早八点,我们再来完整跑一遍全流程。”
走出实验室时,夜风带着微凉的气息扑面而来。她把外套拉链拉到最顶端,背着书包缓步向宿舍走去。路上遇到几个相熟的同学主动打招呼,她微微点头回应,脚步始终平稳,没有丝毫停留。
手机忽然轻轻震动了一下,是班级群弹出的消息。
【高三(1)班·日常】
高兰芝:今天在图书馆看到雨薇团队的竞赛海报啦,加油加油!
欧阳娜娜:听说这次建模题特别难,不过咱们薇神肯定没问题~
匿名:全力支持!等你们拿第一名!
她没有回复任何消息,只是将手机轻轻揣回口袋。那些熟悉的名字,仿佛来自一段遥远又模糊的旧时光。此刻的她,再无多余心力顾及其他,只盼着能好好睡上一觉,养足精神,把明天未竟的事继续做完。
次日清晨六点半,天色刚蒙蒙亮,杨雨薇已经坐在实验室外的长椅上,安静地背诵着英语专业术语。七点二十分,陈明第一个赶到,手里还拎着两杯热气腾腾的豆浆。紧接着,林晓和小周也陆续抵达,三人各自分工,仔细检查设备、核对文件,做好了万全准备。
八点整,四人再度围坐在主机前,一同启动了全流程测试。程序平稳加载,数据精准导入,模型训练正式开始。进度条在屏幕上缓缓向前推进,实验室里静得只能听见电脑风扇转动的轻响,这份安静里,却藏着千钧般的力量。
当屏幕上清晰跳出“训练完成,准确率达标”的字样时,墙上的时钟,恰好指向九点十三分。
“可以提交了!”小周的声音微微发颤,难掩心底的激动。
杨雨薇点开学校官方竞赛平台,逐字核对完所有信息,确认分毫不差后,才轻轻按下上传按钮。页面瞬间弹出“提交成功”的提示,倒计时清晰地显示着:距离正式比赛开始,还有整整47小时。
她缓缓靠向椅背,疲惫漫上眉眼,却终于漾开一抹释然的笑意。
“接下来我们做什么?”林晓轻声问。
“休息。”杨雨薇语气轻而稳,“调整好状态,迎接真正的比赛。”
陈明收拾东西时,忽然轻声开口:“你说,如果那天晚上我们真的退赛了,以后想起来,会后悔吗?”
“我不知道。”杨雨薇站起身,利落地拉好书包拉链,目光清澈而坚定,“但我知道,今天我们没有退,这就够了。”
她走出机房,走廊尽头的阳光倾洒满地,暖亮而温柔。远处教学楼响起清脆的上课铃,学生们抱着书本匆匆走过,朝气满溢。她抬头望向天空,薄云轻散,晨光澄澈透亮,落在心上,安稳又舒展。
回到教室,她取出笔记本,认真写下今天的日期。翻开崭新一页,提笔勾勒出此次建模题的延伸方向,逐一标注比赛中可能遇到的难点与应对思路。笔尖划过纸面,沙沙轻响,沉稳、笃定、有力。
门外传来脚步声,其他参赛队伍的同学路过,热烈讨论着选题与解法。她没有抬头,依旧专注地写着、画着,心无旁骛。