晋江文学城
下一章 上一章  目录  设置

3、第 3 章 2017年 ...

  •   2017年9月18日,星期一,晚上八点,“问鼎”第二轮线上初试开始。
      这一轮,只有一道题。
      题目很长。大意是:某广告平台一天的曝光日志,一共四十亿行数据,文件整整四十八个G。每一行三条信息:时间戳、广告位编号、本次曝光的分成金额。给定一台机器,内存两个G,磁盘管够。要求:算出全天分成金额最高的十个广告位,按金额从大到小输出。
      时限,两个小时。
      这题没法暴力,没法取巧。四十亿行数据,光顺序读一遍就要一个多钟头,两个G的内存,连个零头都装不下。
      梁雅安盯着屏幕看了十分钟,起身去洗了一把脸。
      回来的时候她已经有了主意。她把草稿纸摊开,画了一条竖线,把四十八个G切成一千份:哈希分片。同一个广告位的记录,不管散落在文件的哪个角落,都会被同一把哈希函数赶到同一个小文件里去。一千个小文件挨个统计,各自选出自家的前十名,最后架一个小顶堆归并。化整为零,各个击破。
      写到一半,她又卡住了:哈希分片之后,若碰上一个大热门广告位,对应的小文件还是会撑爆内存。她咬着笔杆想了二十分钟,给统计这一步又加了一层分桶,才把这最后一个洞堵死。
      九点五十,她按时提交。
      十点,排名刷新。五百人取一百,2857号,第二十九名,晋级线下。
      线下,万维公司,9月22日。
      她把晋级通知翻来覆去看了三遍,心里那点慌,一层一层漫上来。现场,就意味着她要去他的公司,万一撞见他——
      可惜这个念头才刚冒个芽,就被几万元的债务掐断了……
      第二天,她在常逛的技术论坛上接了个活。有人发帖,一批电商订单的数据要清洗规整,活儿不大,报价四千。对方看她信誉记录不错,当天就把数据包发了过来。
      为了这四千,她过上了起早贪黑的日子。早上五点半起,先把数据脚本挂上跑;六点半到花店备货,站一天柜台;晚上回到地下室,对着屏幕一行一行核对异常数据。王强看她眼底发青,说你这又是何必,她笑着说接了个急活,干完这单歇两天。
      周五那天越近,她心里反而越镇定,她对镜子里的自己说,从容点,你没什么好输的。
      2017年9月22日,星期五。
      九点比赛,她八点二十就到了万维所在的大厦。进了电梯,她习惯性地往角落里缩了缩,伸手去按楼层。电梯里已经站着一个人,在低头看手机。
      两人肩膀轻轻擦了一下。
      “对不起。”她的声音压得又低又快。
      那人往边上让了让,没抬头。
      电梯在十七层停,那人出去。门合上前,梁雅安才敢抬头看一眼,熟悉的背影比记忆里宽了一圈。
      她盯着楼层数字跳到十八,手在口袋里用力攥了攥。她出去,签到,领牌,按指引找自己的机位。今天到场的一百个人,是从五千人里两轮筛出来的,诺大的会议室塞得满满当当。
      离开考还有一阵,她坐下,打开电脑,双手平放在键盘上,深呼吸。
      周风扬八点二十到十七层的时候,入场才刚刚开始。
      他没去赛场,先去了办公室。作为大赛的技术负责人,从五千人里挑进现场的一百份提交,他得亲自再过一下。
      有一份比较引人注意的提交就是2857号。
      第二轮的大题,五百份提交,通过的不到五十个,大部分人死在了内存上。2857的解法是他想要的那个路子:哈希分片,分桶兜底,小顶堆归并,三层结构干干净净,代码也写得比较老道。
      他把那份提交从头看到尾,又看了一遍。
      十点十分,他提前上楼。高层会十点半开,他留给自己二十分钟,去比赛现场看看。
      一百个机位,他一排一排扫过去,2857的位置在一个角落。藏蓝色的外套,帽子压得极低,露在外面的头发很短,耳朵都晒在外面。肩膀窄,脊背挺得笔直,两只手放在键盘上,不快,一下是一下。
      周风扬站在斜后方看了一会儿,这么年轻,代码却很老道,真是后生可畏…… Selina的电话打过来了,压着声音说,GM那边都到了,就等您。
      他转身走了。
      十点半的万维高层会。
      GM把数据拍在桌上,五千人报名,一百人坐进了今天的比赛现场。他说他连夜刷了好几个技术论坛,大家都在讨论万维。
      “我干了二十年广告。”GM说,“到头来,公司做过的广告里最有意义的一支,是个内部的技术比赛。”
      Bonnie接过话:“而且国内市场的局面也活了。之前咱们的业务在国内推不动,这轮比赛下来,已经有客户主动来问,说原来你们是家有技术的公司。”
      她趁热打铁,建议9月29日的决赛和颁奖办成一个像新闻发布会一样的仪式,请几家科技媒体到场,把“英雄不问出处”做实,把宣传做透。
      GM点头,问:“决赛的技术问题,谁负责?”
      “我负责。”周风扬说。
      GM看了他一眼,笑了,说那我就放心了,别让孩子们白跑。
      周风扬坐在下手,先把四位VP的神色挨个看了一遍。年长的两位端着茶笑,最年轻的那个转着笔,笔尖一下一下点着桌面。国内的资深领导们凭什么给一个从美国空降回来的项目负责人当陪衬,这话没人说出口,脸上都写着。
      晚上,本科一个宿舍的同学聚会,地点选在南门涮肉。
      周风扬到的时候,吕同已经开喝了,见他进门,老远就嚷:“周总,你们公司那个‘问鼎’,可出名了啊,几个科技论坛都挂着版,我公司的实习生都在刷!”
      “出了名,苦的是自己。”周风扬坐下,自己倒了杯茶,“你们当我愿意搞这么大动静?空降回来,新项目组,说是团队,转过来的要么是老油条,要么是前几年绩效垫底发配过来的。我争了几个HC,简历一打开,塞过来的都是什么玩意儿。”
      “那你挑啊,985硕士往上挑。”
      “我也算看明白了,”周风扬说,“好苗子根本不投我们这种小公司,全被大厂截在前面。与其守着985硕士那条硬门槛,不如把池子挖大,广泛撒网,说不定能捞着真会写代码的。”
      一桌子人纷纷点头。有人感叹,这几年互联网招人和抢人一个样,大厂工资给得齁高,应届生开口就敢要五十万。又有人拍周风扬的肩膀,说周兄当年不出国,赶上这几年好时候,没准现在也财富自由了。
      “别逗了。”周风扬笑,“有靠谱的人,多多介绍。”
      “介绍也轮不着我。”吕同给他续上茶,叹了口气,“我那小公司,招不起985或者211,招的都是普通学校的孩子,出活更不行。说出来你不信,最能干的一个,是最近合作的兼职,按单结算,干活顶我两个全职。”
      周风扬端茶的手停了半秒。
      兼职。他莫名想起白天那个藏蓝色的背影。
      “发什么愣?”
      “没什么。”他把茶喝了,“你那个兼职,靠谱的话,让我看看水平。”
      同一天夜里十一点,万维十七层,周风扬的办公室还亮着灯。
      二十六个获奖选手,他要出一道配得上这二十六名选手的题。
      技术委员会的题库他翻了一遍,都不满意。太标准的题,筛不出真东西。他关了题库,打开自己八年前的一个加密文件夹,把ACM决赛那道题调了出来,看了很久。
      最后他没抄原题。他把当年那个最得意的走法抽出来,换了一副全新的骨架装了进去,样例数据跑了一遍,又跑了一遍。
      这个走法,他没在任何公开场合讲过。他这辈子,只在一个夏天的深夜,对着一台电话,一字一句地讲给一个人听过。
      他把题面上传到系统,靠在椅背上,看着屏幕。
      这道题,他想,国内能在短时间内解出来的,一只手数得过来。
      凌晨一点,梁雅安把兼职的最后一包数据发了出去。对方秒回:收到,尾款明天打。
      她看了眼时间,又看了眼手机。报名系统来过一条短信:恭喜您进入“问鼎”决赛,决赛时间9月29日。
      她放下手机,睡不着。七年了,她设想过一万种重逢,唯独没想过这一种:他站在半米之外,认不出自己。
      她爬起来烧水,泡面。水开之前,她从床底的行李箱夹层里,摸出那本黑色的笔记本。封面烫着H大缩写的四个字母,右上角贴着一张飞机贴纸,边角磨得发白。
      她翻开,纸页哗啦啦地往后翻,翻到一个页码,她的手停住了。
      这一页记的是一道平衡树的题。解题步骤、复杂度分析、一行“此处可再压一个log”,写得密不透风,是他的字。
      她想起很多年前那个深夜。他夺冠,电话打过来,兴奋得语无伦次,一句一句讲自己的做法,讲到最得意处,敲着桌子说,记住,化繁为简。她听不懂,捧着电话假装懂了,嗯嗯地应。可他的话,她一字不漏,全记下了。
      这个本子,就是他夺冠之后塞给她的,说是“反正以后要给你讲题,省得我重复劳动”。里面全是他多年攒下的算法心得,一页一页,厚得能当砖头使。这些年她卡住的时候,就翻开它。看不懂的地方还是看不懂,可那些字在,就像有人陪她一起熬。
      王强总说她一个卖花的,学这些做什么。没人知道,把她从泥里撑起来的,不是什么别的,就是这个本子,是本子里那个人。
      窗外的路上有车碾过去,灯影在天花板上晃了一下。她把本子塞回枕头底下,关灯。
      决赛,9月29日。还有七天。
note 作者有话说
第3章 第 3 章

  • 昵称:
  • 评分: 2分|鲜花一捧 1分|一朵小花 0分|交流灌水 0分|别字捉虫 -1分|一块小砖 -2分|砖头一堆
  • 内容:
  •             注:1.评论时输入br/即可换行分段。
  •                 2.发布负分评论消耗的月石并不会给作者。
  •             查看评论规则>>