002. 这就是ACM? 算法青春
输出的样例是
```
3
```
就是要写一个程序接受输入,並计算`1+2`的结果`3`
oj对格式的要求很严格,输入输出的顺序,哪里多个空格少个空格,都可能导致无法通过。”
郭晓川翻到了“评测状態”页,“除了出错外,还有超时、超內存等一些其他状態,只有“accepted”表示通过题目,其他状態都不行。”
“比赛的排名依据是通过题目的个数和一个叫『罚时』的小分,罚时和过题的时间、错误次数有关,具体规则暂时就先不管了,系统会自动计算。”
突然一个餐盘砸在三人旁的空位,汤汁溅在郭晓川的笔记本上。
“罚时规则都没搞明白还想去参赛?”
一个中等偏瘦的男生出现在旁边,轻微驼背,短髮乱糟糟贴在额前,一副黑框眼镜,深色t恤洗的有些褪色,搭配著一条磨白牛仔裤,整个人散发著技术宅的气息。
“你又不是湘和的,怎么每周都来?”陈小燕抽出纸巾帮郭晓川擦著笔记本,抬头问道。
郭晓川收了笔记本,肖乐直接坐下,回道:“来向陈大神请教碱基序列匹配算法啊”,他扫了眼郭晓川和彭峰,语气里带著优越感:“听不懂吧?”
“你说的啥,我也听不懂。”陈小燕接道。
“原来是肖神,看来这次校赛一等奖势在必得了。我们就是去玩玩,肖神多多指点”,彭峰接过话头。
肖乐脸上的不屑少了些,但还是带著掩饰不住的傲娇:“罚时的基本计算就是把每道题通过时,距离比赛开始的时间加起来,所谓『罚』就是错一次加罚20分钟,通过题数相同的队伍,罚时越少排名越靠前,就这么简单,这都搞不明白。”
“还是肖神厉害,三言两语就讲明白了”,彭峰奉承道。
肖乐面露得意,气氛稍微缓和了些。“那要是罚时也一样呢?”陈小燕抬头追问。
“这...概率很小了”,肖乐顿了一下,看起来也不太清楚答案,说的略有吞吐,“有的比赛就当並列了,有的会再考虑谁先解出自己的最后一题。”说完他期待地看向陈小燕,等著她的夸讚。
“哦,那就是每道题花的时间不变的情况下,先做花时间短的题,罚时就更少”,郭晓川突然若有所思地开口。
“那才不是”,肖乐几乎是本能地反驳,但话说到一半又停住,“哎?好像还真是。”
“啥意思川儿?没懂。”彭峰一脸疑惑。
“比如解决三个题需要花费的时间分別是 10、20、30分钟”,肖乐抢过话头,“按顺序做就是第 10分钟做出第一题,第 10+20=30分钟做出第二题,第 30+30=60分钟做出第三题,假设都一次通过,罚时就是 10+30+60=100分钟。但如果倒过来,第三题在第 30分钟做出来,第二题在 30+20=50分钟做出来,第一题在 50+10=60分钟做出来,虽然都是在第 60分钟解决了三道题,但罚时就成了 30+50+60=140分钟,罚时比按从简到难做多了 40分钟。”
“哦~~”彭峰和陈小燕异口同声。
“我吃完了,你们继续”,肖乐端起餐盘起身,走到两步突然回头,对著郭晓川和彭峰摆出“im watching you”的手势,陈小燕察觉到两人的异样回头望去时,他立刻转身,装作什么都没有发生,向餐盘迴收台走去。
陈小燕看著他的背影纳闷道:“你们叫他大神?他哪里神了?”
“他把校內网当技术博客,大一之前就在写技术文章,隨便做个贪吃蛇小游戏都是洒洒水了。”彭峰迴道。
两周后校赛如期而至,校本部的信息楼四楼机房热闹非凡,墙上装饰了各色气球,每个气球下方都贴著“a、b、c、d...”的题目编號。
“我看网上说这比赛有个特色,做出哪道题就会收到对应顏色的气球”,郭晓川指著墙面给队友解释,“墙上的气球和题號就是题目与气球顏色的对应表。”
彭峰按了几下开机键,小声嘟囔“怎么就只有中间的电脑能开。”
好巧不巧,肖乐的队伍就坐在隔壁桌。“你们不知道 acm正规比赛三个人只能用一台电脑吗?”肖乐推了推眼镜,语气里是藏不住的嘲讽,他的两个队友也跟著发出附和的笑声。
“我就看看备用机是不是好的嘛”,彭峰找补道。
郭晓川摆弄著系统环境,顿感不妙,没有 vc6.0也没有 c-free,只有个 devcpp看起来像是写 c语言的软体,打开来一通操作也没能编译个“hello world”,便转头问陈小燕:“有你会的软体吗?”
陈小燕仔细翻了桌面图標、开始菜单和几个硬碟分区,,无奈地摇头:“我平时用 visual studio写程序,这台电脑里好像没装。”
机房里几个管事的学长正穿梭忙碌,给新人解答各种问题。其中一个经过他们队伍时突然停下脚步:“哎,你来了。”郭晓川抬头一看,立刻认了出来,是去年图书馆电脑室遇到的那位“算法导论学长”。
“学长学长,能给电脑装个 c-free吗?”开赛前学长在话筒里说过有需求儘管提,所以郭晓川试著问道。
“dev一样可以编译c……”学长话说一半又停住,“行吧,等下我找个志愿者给你装一个”。
肖乐突然凑了过来,“你认识尹南巍啊?!”
“以前见过一次。哦!他就是群里一直指导新人的学长!”郭晓川这才將名字与人对上號。
“不儿,你竟然不知道他?”肖乐瞪大了眼睛,满是不可思议,“校队三大台柱子之一,数据结构大师,全院但凡能写出几行像样代码的,哪个不把他当偶像?有他们队,今年是最有希望亚洲区域赛夺金的一年。”
郭晓川看著尹南巍继续走向机房后方的背影,心中涌起一股敬佩之意。
“你是郭晓川吗?”一个熟悉的声音从身后传来。郭晓川回头,看见汤雨薇晃了晃手中的u盘,正开玩笑地喊他。
“救星来了!”彭峰立刻拉开凳子让出位置。
“你们要的 c-free”,汤雨薇把 u盘递过来,眼神扫过陈小燕时,四目相对都闪过一丝迟疑,好像要弄清对方是谁的感觉。
很快软体运行正常,汤雨薇笑著摆摆手:“我去忙別的了”,便小跑著去处理其他队伍的需求。
机房广播突然响起尹南巍的声音:“大家回到各自队伍的位置坐好,比赛还有1分钟开始。”
郭晓川三人迅速坐定,点开编程软体和瀏览器里的 oj地址,屏幕上的光標在空白代码界面里静静闪烁,等待著他们第一次 acm比赛的正式开始。