前言
熟悉我的人可能会好奇,为什么我一个其实很早之前就可以结束ICPC生涯的人会在这个时候才写下这篇文章。
有时候我回望这段故事,也会下意识难以置信得觉得它结束在了一个不合时宜的地方。这期间发生了太多的故事,邂逅了太多的人。
所以,且就此机会,我将我长达五年的竞赛生涯做个流水账式的记录。
同时,由于回忆录中会出现大量的真实人名,为了隐私考虑,我将所有的人名都仅按照姓名首字母拼音记录。
OI
OI,中学生信息学奥林匹克竞赛。
我踏上算法竞赛这条路比很多人知道的要早,最早可以追溯到高二的寒假。
那个时候,我刚刚结束了化学竞赛夏令营的自闭过程。在比完了化学竞赛国赛之后,我就清晰的意识到,在化学竞赛方面我的兴趣并不支持我继续打着哈切学有机无机。于是,我很早的退出了化竞。
对于那个时候的我来说,其实最正常的选择是回归文化课,用剩下来的一年半时间搞好江苏卷的语数外。
但我的父亲并不这么想,他觉得我可以尝试一下算法竞赛(也就是信息竞赛)。之所以是算法竞赛,是因为他是一个程序员,虽然没有搞过算法竞赛,但程序员的工作和算法总是有关联的,他能够给予我一些入门上的帮助。
这刚好与当时我想的内容不谋而合。
对于那时候的我来说,并不喜欢一遍一遍的复习旧的知识,因此高中文化课翻来覆去的复习让我很是头疼。同时,虽然不了解信息竞赛,但作为理科生的我,还没有找到任何一个上课不会犯困头疼的理工科科目。
于是,我决定给算法竞赛一个机会。
我的父亲执行力很高,在我还没开始寒假集训的时候,就帮我准备好了语法和算法书籍和训练计划。加上高中的五大学科竞赛基本都是高中学大学知识,自学就足够cover。
就这样,我开始了寒假的疯狂训练,每天醒来就是看书,做题。
值得一提的是,我父亲最开始帮我注册的OJ账号用户名用的是他自己的名字。(不知道后来有没有人好奇过我的用户名为什么叫这个哈哈)
然后后来的OJ都是我自己用自己名字创建的帐号了。(BZOJ、HDOJ、VOJ、BestCoder之类的OJ有的做的题太少了,有的OJ消失了,这里就不列出来了)
现在回头看,高中的训练状态或许是我竞赛生涯以来状态最好的一段时间之一。那个时候,我能在什么都不懂的情况下,三天学完C++。能在一个多月的时间里从冒泡排序学到矩阵快速幂加速DP,把所有普及组的基础知识都学完。还能够在每天完成文化课学习的同时,回家九点多钟再点开一道算法题,然后Debug到十一点。
能做到这突飞猛进的进展,除了我个人的一点努力之外,还需要感谢我的父亲,他给我第一本算法竞赛入门书,书名叫「算法竞赛入门经典」。书是紫色的,作者名叫刘汝佳,书翻开的第一页上还能看到他的照片和自我介绍。
自我介绍里,这个看上去有些平朴的男人用很谦卑的语气描述了他发奋图强的高中算法竞赛生涯,通过一年的突击达成了国内很高的成就。然后用通俗易懂的语言写下了一本简单的「算法竞赛入门经典」。
因为这样的描述,让我在初学算法竞赛很长的一段时间里,都觉得自己的智商过于低下,以至于会在一本「入门经典」上耗费大量时间,还学不会其中不少知识点。他还有一本「算法竞赛入门经典训练指南」,里头包含了很多配套的习题,难度更是让当时我的觉得过于恐怖。短短几行代码里凝练的智慧,我想破脑袋也学不清楚。
直到很久以后,我知道了刘汝佳只是因为自谦,觉得算法竞赛博大精深,「入门」已经是不低的评价。并且了解了算法竞赛的等级,知道了那些曾经让我觉得极其困难的题目,都是某些区域赛的金牌题,乃至World Final的题目后,我才能稍微鼓起一些勇气来继续学习下去。
话归正题,高中算法竞赛有很多轮比赛,但绝大多数人能接触到的只有前两轮,第一轮初赛笔试,会考一些算法知识点和读程序。第二轮复赛机试,会连考两天,考核一些上机的编程题。
感谢我当时高中的算法竞赛教练TJG,虽然因为入门到考试的时间很短,我并没有在校进行训练,但他还是给了我一个补偿名额,让我在初赛差了分数线十几分的情况下获得了复赛的资格。
复赛那两天,我很紧张,甚至跟高考前的状态差不多。毕竟对于很多竞赛选手,有很多次竞赛机会,而那时高三的我,竞赛和高考一样,只有一次。第一天考试的时候因为碰上那道臭名昭著的小学奥数题「小凯的疑惑」乱了阵脚,第二天的时候又因为不开long long见祖宗。两天分数合起来不到两百分,拿了个「没啥用」的省二。(考大学自主招生时省二是有用的,但这里说没用,是因为这之前我已经拿了一个化学竞赛的省二了)就这样草草的结束了我的高中算法竞赛生涯。
但是,尽管这个奖项没啥用,但是花在算法竞赛上的半年多时间,却是我认为我高中时代最值得的一笔时间投入。
它不仅让我有合理的理由翘掉假期文化课补课,还让我清晰的意识到,原来敲代码这件事情,能让我在深夜不犯困的做下去。这是数学、物理、化学这些科目从来没能让我做到的。
换句话说,在接触算法竞赛的那一刻,我也下意识在心里做了一个人生中重要的决定。
不管以后去什么大学,我要学计算机。
就这样,一年后,我真的去学了计算机,变成了一名ACMer,而且是在一个无数OIer梦想中的学校,南京师范大学。(这意味着,在这里学计算机的不止只有男生)
大一
直至今日,我依然觉得我非常幸运,我在大学上的第一堂课,就遇到了整个计算机学院里最好的一位老师,WQ。
这个五十来岁,颅骨内凹导致眼睛往外凸出来的老师给人的第一印象是朴素而富有强烈激情的。尽管这样的激情,我在高中时的两位语文老师朗读课文时都见到过,但在遍地读PPT的大学老师中,这样的激情因为稀缺而显得弥足珍贵。
因为共处四年的原因,我有很多很多话可以描述这位值得尊敬的老师,他坐在一把破破的办公室椅子上指点江山激扬文字的样子,总让人觉得他要是活在一千多年前就是某位枭雄帐下的军师。
在我不算长的大学生涯中,他也成了我唯一一位能够在我面前抽烟(我很讨厌抽烟),我还能着重精神听讲的人。
在那堂课下课后,我去找到WQ,问他我们学校是否有ICPC校队,他迟疑了一下,突然说了一个我没曾想过的答案。
「可以有。」
于是,校队就有了。
不过,我并没有成为校队的第一名成员,或者说,我同时和十来名学长学姐成了校队的第一批成员。其中还在军训中的新大一成员有两个,一个是我,还有一个是第一堂课结束后,在我和WQ聊天时路过的一个瘦瘦高高的山东男生,GMX。
WQ老师的执行力很高,或许是因为他早就在观察各个年级中值得进入校队的学生的原因,几乎是一两天时间里,各个年级中编程能力最好、对算法最感兴趣的那批同学就被他聚集到了校队里。
在化成楼101的第一次讨论会上,我见到了这些日后对我帮助良多的学长学姐们。他们作为每个年级最出色的一群人,给了我很多不只是算法上的帮助,还包括大学期间的一些专业课程帮助和精神导向。
而这样的精神,我不知道该怎么表述,只能对后来新加入校队的队员做同样的事情。包括但不限于,早早的告诉他们一些专业课程学习上时间安排的trick,寒暑假开设的算法提高班,竞赛讲题班等等。
有时候我也不清楚通过我的帮助,让那些学弟学妹们速通无聊、死记硬背的过时课程,花更多的时间在思考算法上,是否真的是一个好的行为。但当我在他们的代码里看到我熟悉的风格,在他们的演讲中听出我熟悉的语气时,那种骄傲感确确实实冲昏过我的头脑。
生活在校队建队之初的时代,是一个绝对幸福的事情。尽管大家来到这所学校,说明都不是国内绝顶聪明的学生,但是能够进入校队的,都是对算法绝对热爱,同时有足够的智商和努力去支持这种热爱的人。这意味着我们可以用自身的时间与实践去在这片尚未开垦的沃土上探索各种各样的组织模式和管理形式。
而在这途中,我也结识了一个个超级nice的人。
SSW,一位高高大大的男生,我入学的时候他已经要毕业了。他和他的两个队友,ZT、BNF组成了最初的竞赛小队。或许是临近毕业的缘故,每一次的讨论会上,当大家都在讨论算法的时候,他总能聊到一些更具象的内容。比如某些算法的工业应用,又比如如何自己配置一个翻墙服务器。是他告诉我,虽然我可以直接去买包装好的翻墙服务器,下载即用。但是如果是自己配置一个服务器,从最开始的服务开始注册搭建,让它不只是一个翻墙服务器的话...拜托,那超炫的。
SXA,一个很帅的男生,班草级别的颜值会让人很容易忽略他同样优秀的学业。作为一个大我两届的学长,他见到我的时候,和SSW一起拍拍我的肩膀,跟我说了一句「软工的未来」(软工指软件工程)。而为了达成这个预言,我用了两年时间努力,最后却因为保研成了一只彻头彻尾的绩点混子加综测混子,实在感觉自己把大半时间活到狗身上去了。
CZR,如果说我在大学期间说话速度能提高,并且逻辑不乱的话,这位语速极快的学长一定有不小的帮助。不过让我印象更深的,是他在讨论会时显露出的那一套极其流畅的数据库操作技巧。高中的竞赛让我提前学会了语言基础和数据结构,但是对于眼花缭乱的数据库操作和各种Linux Terminal命令,第一次着实amazed me。用SQL命令在几张表之间来回查询跳跃之间,令初出茅庐的我充满了羡慕。
FBZ,如果我没有记错的话,在第一次JSCPC上,她和FZR、YFR两位学姐曾经作为女队在封榜的最后时刻完成了过题,组委会欠她们一个顽强拼搏奖。当然,这位同样大了我两届的学姐,也成了我整个大学印象里最努力的人。如果偶然经过深夜自习室,往往能看到她的身影。
除此之外,还有DJF,和CKY,这两位学姐虽然很少出现在校队里,但她们在校队做过的演讲和分享,还有留下的墨宝被我张贴过好多次,在某种程度上成为了校队比队旗还要鲜艳的一面旗帜。(只可惜后来那份墨宝在我大四不在的时候,被不识货的家伙弄没了)
在和这群人的共处中,我就这样晃过了我的大一。在周围的大一学生还在和同龄人一起头疼于各种新的知识和制度的时候,我已经很早的知道了这些表面花里胡哨东西背后的好坏。
大二
时光一晃就是一年,大四的学长已经毕业,大三的学长学姐到了大四,趁着疫情尚未到来,开始了忙碌的实习生活。而我和原本大二的学长学姐们也混熟了。
如果说在高了我两届以上的学长学姐面前,我只有向他们学习的份,那么对于上一届的学长学姐,我浅薄的知识就有了一席用武之地。高中的竞赛生活让我能够在一定程度上达到他们的层次。
CYM,又叫一名同学,我和他的第一次见面是某次不该存在的讨论会。那一次不知道什么原因,讨论会只来了我和他两个人,化成楼101机房的门也没有打开,和我关系要好的JSL老师也不在旁边的办公室里,于是我和CYM就这样坐在机房门口开始了本来准备好的训练赛。
做题的过程本身是枯燥无聊的,所以我们做完题之后就开始有一搭没一搭的聊天,聊着聊着就从题目聊到了其它地方。
他跟我说有一个刚上大四的学长,很强,问我想不想见见。我说可以。于是不久后,这个名叫ZYY的学长找到了我,我拉着GMX跟他做了第一个Project,调了小两个月的神经网络,深夜在化成楼101一边吃着薯片一边吹牛逼,后来发了篇论文。其中一位很可爱的名叫CYX的学姐去国外参会的时候,还给我带来了一些纪念品。其中有几枚印着巴黎圣母院的镍币我很喜欢。因为她回来后不久,巴黎圣母院就被烧了。
QRT,高高的男生,很爱笑。平心而论,他算是校队里并不聪明的那一部分人,能有和其他人差不多的竞赛水平更多的是靠努力,但他又是最聪明的一批人,因为不聪明的人,是没办法做到身兼数职(学生会副会长,校队第一任队长)的同时,还能把各方面搞得这么好的。
我从另一方面知道他很强的地方,是通过一次很长的兼职。不过,这是大三的事情了。
LPJ和TY,我的第一对神仙队友。我和他们之间的故事不算短,他们曾经带着我一路收获了JSCPC的金奖,ICPC的第一块,也是我拿到过的唯一一块铜牌。但这支队伍之间的协作并不止于此,后来我们几人一起创建了BuddyOJ,一个全新的软件,也是我上手过的第一个大型Project。因为借鉴了若干个开源项目,并且经过了反复的重构,那其中的代码,至今依然被我认为是极优雅的。在开放使用后产生的数万条评测记录中,前端崩过,后端崩过,评测机的守护进程却从来没有出现过故障。
我和这两位队友一起在吵闹的图书馆写过代码,打过各种各样大大小小的比赛,学过算法和除了算法以外的各种语言和框架,一起吹PHP,一起骂那群把我们的讨论会场所化成楼封起来的弱智们,还说以后要是发达了,一定要在回忆录上狠狠的记一笔当时颠沛流离的训练时光。(当然现在谁也还没成为名人,不过被赶来赶去的痛苦还是一直挂在心上)据说TY老家的徐州地锅鸡很好吃,但南京一直没有正宗的,有机会还要去他家尝上两口。
ZTX,很有感觉的一位学长,他是高我一届的一位人物,很叛逆,叛逆到很多老师并不喜欢他,不过这让我对他的事迹很好奇,也心生敬仰。不过由于大多数都属于道听途说,不能确证,所以这里暂且留在心中,不去提起。
LDD、RHB和ST,这三位来自中北学院的同学,我后来一直没敢去联系他们,因为一个学院拍脑袋搞出来的破项目,我请他们帮忙完成了,但是后来学院意识到了自己的想法是多么弱智,于是越好给的项目经费和补给一直拖拖拖拖拖,最后拖到原来负责这块的人调任,干脆不了了之,让我在象牙塔里成功感受了一次社会的险恶。
大二那年,算是我在大学期间生活十分丰富的一年,我不仅对这个学校更加的了解,也开始认识了一些来到校队的新鲜血液。
尽管此时的校内竞赛氛围因为各种不友好的政策,变得让人少了很多动力,每周的讨论会也没了我在桌子上堆满的薯片山。(这里需要补叙一下,为了提高最开始时大家参加算法讨论会的动力,WQ老师和ZCL老师出钱来丰富讨论会的生活。那时候的我第一次拿着大几千块钱,却不知道怎么花,就每周买了很多零食,以薯片为主,放在了讨论会房间的大桌子上,力求让所有人可以一边嚼着薯片一边讨论算法。再后来,因为讨论会的场地被禁止使用了,这笔钱就被用来聚餐用了)
SZQ,一个略胖的男生,实际上是大了我三届的学长。算法的魅力在这个人身上体现的淋漓尽致。这不仅仅是因为他本身有着很高超的算法能力,还因为他作为一个数科院的学生,在本科到研究生期间,一直保持着对算法的热爱,这份热爱不仅针对于做题,还针对各种各样应用级别的算法,比方说深入理解JAVA虚拟机等等。
SYD,很可爱的一名男生,高高大大的。(我可能在这篇文章中会用上很多次「可爱」这个字眼来形容人,这或许是因为我词汇不多,也或许是因为这些人身上总有一种让人觉得可爱的气质)我和他最开的交集来源于羽毛球,经常约球的过程中,我顺道还见证了他和校队里另外一名名叫TMQ的队员恋爱过程。
CXJ,同样可爱的男生,这个不那么纯粹的世界对他来说不算是一件友好的事情。他不喜欢问我题目,喜欢独立思考。但在某些经验主导的问题上,他很重视他人的意见,每当他向我征询一些想法的时候,我总会觉得很有压力。不过压力是一件好事情,这让我说出的话看似随意却又字斟句酌,我希望我给他的建议能让他走在一条总体向上的道路上。与此同时,我又深深为有这样一个「迷弟」而感到自豪,毕竟我自认为并不算聪明,只是刚好多活了一个寒暑。
LY,我认识的第一个可以称得上「创业者」的人。他拥有很少见的创业者所需要的特质,这种特质不太好形容,他可以被描绘为果决,强执行力,强自主判断力,强交流、表达和联合能力还有恰到好处的激情。但身具这些能力的人并不一定能成为「创业者」。我没有这些能力,所以很羡慕。不过好在一直呆在他身边,让我有了对这种人的抗性,了解了一些常用的鼓荡人心的话术之后,我就有了一些微末的自信。自信于以后能从那些「创业者」们激昂的表情后面,看到他们长得太大的嘴巴,和一颗黑掉的心。
写这篇回忆录的时候,我已经很久没有和LY联系了。长久的疫情隔绝了上千公里的距离,也让这个充满激情的家伙变得常常抑郁。不知道他现在的状况怎样,也希望他考研有一个顺利的结果。
SLH,作为除了LY以外,我ICPC第二次组队的另一个队友,描述起来就显得简单了很多,这个人虽然活得并没有那么纯碎,但是表现出来的气质却很清晰:乖巧又欠扁。最开始和他交流时,我曾经无数次想吐血三升,觉得此子愚钝非常,但后来才发现那只是「一个人在装聪明,一个人在装笨」而已。装聪明的那个人是我,装笨的那个人是他。
智慧的获得从来都是一件代价高昂的事情,自古以来就没有便宜过。
在明白了这一点之后,我和他交流起来就谦卑了很多。而谦卑的好处,就是从这个家伙那里学到了很多东西。比如,看上去不可理喻但实际上又恰如其分的勇敢。
靠着这股子不知道从哪里来的勇气,我收获了人生第一场恋爱。
大三
我的大二发生了很多事情,我在蓝桥杯上终于拿到了国奖,再一次拿到了JSCPC的金奖。
后来,还坐飞机跑去银川打了场线下赛,拿了个银牌回来。SLH第一次坐飞机,感觉很新奇,而经常坐飞机的LY,和带我们去的CB老师已经见怪不怪了。
在此期间,我还和QRT去了南外当了一学期的学生竞赛教练,这个兼职之前SXA学长也做过。起初我是压力很大的,觉得自己没资格成为这些高中或者初中的天才们的老师。不过后来当我发现,我只需要看懂题解,然后重新复述一遍之后,这个工作就没那么累了。何况南外的LS教练一晚上大几百的工资也很给面子。
在兼职的日子里,我和QRT一人管一个班,不过经常在两个班之间交换位置。我缺少威严,需要他来帮我管住那些想杀后台学生端,把机房当校园网吧的惹事小子。他缺少一定的讲题能力,有些题目讲得不太清楚的时候我就来救场。
两人通力合作一晚上,用狂拍讲台的板擦和一黑板的伪代码、数据结构草图和演算把那些嗷嗷叫的嘴都堵上之后,就搭乘晚上十点的地铁回学校。路上顺带再买份深夜的炸鸡或者炸排骨,美滋滋的走完下地铁回学校的最后一段路。
不过,大三之后,我的重心开始发生了一定的迁移,尽管还是会时不时的训练,但水一些烂分来帮助我保研变成了一个不得不做的事情。我太懒了,不想重新来一遍在我眼里跟高考差不多的考研,而且我自律的程度也差,就算准备考研,也是必做不到每天早上七点钟起来,嚼个包子在寒风中等图书馆八点钟开门的。
于是,我申请了一堆软著,混志愿分,参加了计算机设计大赛等等。终于将将好的拿到了一个专业第一。(专业人数很少,专业第一不值钱)想去裸申点看上去牛逼的大学。
好高骛远的结果当然是镜花水月一场空,最后乖乖滚去一所我实力差不多的211继续混学历。
好在,在我逐渐开始撒手不管校队的事情(QRT后来卸任校队队长之后,我成了第二任的校队队长)之前,出现了一个低了我两届的学弟,PZR。
这不仅仅是因为,他是真的热爱算法的,还因为他是我认识的热爱算法的人中,最有责任心的。WQ老师也找到了一个新的好地方可以用来继续进行算法讨论会,而不用担心被赶来赶去。
于是我放心的完成了队长交接手续,愉快的滚去实习了。(保研之后,实习成了个可有可无的东西,但是那个时候如果有什么东西能够让我不用去院办做无聊透顶的公差,被呼来喝去当作最劣等的牲畜使唤,那么最妥帖的办法就是实习)
大四
躲进小楼成一统,管他春夏与秋冬。
这一年的生活并不算枯燥,但在竞赛相关的事情上,是乏善可陈的。如果真要说上那么一两句,那么竞赛在实习生活中成了一个帮助各种人通过考试的工具。毕竟有些算法题,百分之八十的人是做不出来的,但一个能做出来的人,能同时帮助四个做不出来的人。从而让这道题没有难到任何人。
我就这样连续实习了两个学期,度过了我的大四生活,整个大四期间只回了两趟学校。一趟为了推不掉的考试,另一趟则为了去看看许久未见的老师和朋友们。
很可惜,那一天我只见到了他们中的一部分人。
很庆幸,见到的每一个熟悉的脸孔都对我的到来充满惊喜。
那一天我过的非常开心,WQ老师跟我坐在机房外聊了好几个小时,我最喜欢的游戏英雄成了比赛时SLH、PZR、LR(LR是SLH的女朋友,也是校队队员之一)所使用的队名(波比黑波猫),还拿了最快解题奖。其它熟悉的身影,SYD,ZQ(校队成员之一,好学程度MAX),CXJ,LYQ(交流比较少的一位学妹,后来好像保研成功圆梦)、TMQ带着我聚餐,在刚树好的毕业纪念牌子旁边为我完成了一份独属于我的毕业照。
每每回忆起那场景都让我感动的想哭,有些东西因为竞赛开始,却从来不是因为竞赛结束。
老子这几年的校队生活,做的那些事情,值了!
研一
如果我的竞赛生涯在大三打完最后一场比赛时结束,它会很完美。因为我拿到了生涯中最高的奖牌退役,然后在其后的一年里留下一段励志的传说。
但很不幸,我没能做到这一点。
在研一的时候,我再次开始了ICPC。这一次,我的队友是一名大四的学弟,DL。还有我现在的一名室友,SX。除了我以外,另外两人都曾经拿过一次区域赛铜牌。
有时候我也说不清楚在这个时候继续ICPC是什么心理作祟。甚至在训练的时候也偷偷的训练,不想让人知道。心理就当作今年是能打ICPC的最后一年,打完这最后一年,就再也不能打了。(ICPC每人每年能打两场,最多打五年)
或许虽然这个时候ICPC已经成了收益率很低的一件事情,但我仍旧对那种竞赛的刺激感觉着迷。在一边搞科研的同时,我开始了较高频率的刷题。翘课,鸽作业,一天刷上四五个小时。
然后,一个多月后的西安站打铁。
SX打累了,退出了ICPC。而我和DL选择了继续。并且花了更多的力气,大概有我高中时的六成努力。
又训练了一个多月,期间我平均每天刷三到四题,每周练两套真题,CF打上了蓝名,学了好些个新的高级算法。但打着打着,我的信心就越来越少。
因为,在这些真题中,2022年所有ICPC区域赛赛站的模拟赛,我们都没能打进铜牌区。仿佛题目变难了,我变菜了,又仿佛我已经跟不上这个快速进步的赛区和选手了。
最后年底的南京站,结果也不出所料,继续打铁。
在比赛结束的最后几分钟里,我和DL相视苦笑。这是我的退役之战,不出意外,也是他的退役之战。
这场比赛证明的东西不多,但它至少说明了我曾有过很强很强的队友,带着我去到了我个人实力所达不到的地方。
「我曾踏足山巅,也曾跌落低谷。」
只是我没想到,这个低谷会出现在结束时刻。这让我在南京站结束的好长一段时间里都没有兴致去写下这篇在脑袋里构思很久的退役回忆录。
只是偶然有一天,收拾家务的时候脑袋空空的,才恍然觉得该把这些回忆记录下来,防止有一天连带最后的低谷回忆一起忘掉。于是方才重整旗鼓坐下来安静的敲了两天键盘,这才有了这篇流水账式的,带着浓浓土鳖口吻的回忆录。
不过土鳖也挺好,掺了太多文化人笔调的文字就会显得很毒。表面热情洋溢,对于自身的批驳却是最恶毒的。
索性就这样吧,我就此告别ICPC竞赛生涯,但仍旧会像个菜鸡一样活跃在和算法有关的东西上。毕竟那种Accept的快感,于我胜过一场游戏的胜利。
这一点,可能很久很久都变不了了。
Hello ICPC
Farewell ICPC
你好,再见。