Part1 最初的最初
我的OI的姻缘,说来话长……
最初接触到OI,大概是小学四年级的时候,当时老师说建议数学和计算机好的同学去学习计算机编程,当时感到很好奇就去学了。当时其实也就是为了混混游戏的,学的pascal连数组的含义都不清楚,文件输出也不会,连个小学组市级三等奖都没有就弃疗了。
六年级上学期由于奇怪的原因,知道了一个合肥六中的鲍老师(下文都叫他老鲍吧)开设一个C++零基础班,当时也听说C++比pascal高级,感觉就试试看我就又去听了。第一节课老鲍讲的声情并茂,还用诙谐的语言介绍了动态规划是干啥的,还说可以通过这个渠道中考免摇号上1/6/8中,想去哪去哪,这么好的么?高中组更好,省一还能南京医科大学降60分?(当时我听成是南京大学简直乐坏了)懵懵懂懂的我被这深深吸引了(当然主要还是被生动的讲课吸引,当时我对升学这一块没有意识,也没有任何功利心)。
注:后来才知道一中特长生分数还比摇号线高30分……而且自招政策下省一大幅度降分(>30)的大学大多是我不太想去的,但是后来的目标也已不是省一。
然后我就跟着老鲍学了,学会了基本语言,二进制运算等等,会做了些现在看来十分naive的问题,比如水仙花数,斐波那契额数列(int)范围。可能是我的好奇心比较强看到不会的地方喜欢上网搜一些奇怪的芝士啥的,再加上我比较话痨(众所周知),很快老鲍也认得我了,我大概也成了那个班同届学生里面最强的(但那个班是0基础,还是比不过强的)。
就这样每周五晚上听课,周末偶尔写写代码,六年级就这么过去了,我学会了一些相对高级的东西,比如高精度加减乘,string的处理,质数判断,冒泡排序等等(现在看来都是时间复杂度TLE飞了的算法)。
暑假零基础班分流,分成小学班和初中班,我作为新初一基础较好的学生被分到了初中班,但由于知识欠缺小学班也要上,于是一个暑假有一个多月基本上每天都要上课。初中班讲的是NOIP初中组初赛,小学组讲一些算法啥的(因为小学没有初赛),在初中组学会了二叉树、图论(甚至有拓扑图)、计算机基础理论等初赛知识,在小学组也学会了传说中像神一样的二分法和动态规划(现在看来真的naive),还有并查集等当时觉得很牛的东西。
Part2 初出茅庐
2014年的秋天到了,我来到合肥市五十中东校——某个被四十五中按在地上摩擦的学校上学。当时不知道45和50的OI资源差距有这么大……不过一帮在老鲍那学的都在这里,还有同小学学OI的zqm和wyx。当时的我,认为初三的cpy,zyd和dgr学长都是神一样的存在,初二的lyh水平也不错,也不知道为啥特别爱挑逗我?
认识了辅导老师周老师,得知本校每周日上午组织培训,当时基本是初赛培训,讲的是二叉树啥的……周六还要去老鲍那学……基本上周末都被OI占了,文化课就写写作业稍微看看书吧……当时老鲍&周老师一直说初一都是炮灰初赛几乎没几个过的,我当时可不这么认为,因为我一直觉得自己能考80+甚至是85+,往年入围线在75~80。
然后是国庆节了,学校&老鲍那都是集训,学校是复赛,老鲍是初赛,都集中在1号~5号,所以1~5号从早到晚都有课,哭死(也不知道我个没考初赛的为啥上复赛)。老鲍那没啥好说的就是做做初赛卷子讲讲题,感觉自己过初赛挺稳的(flag),又得知入围率从20%调整到25%,真开心。学校请来了安庆十四中的胡峰。每天三道题&一堆难的要死的讲课。day1不会文件找旁边的hyt教我的,然后来不及看题只得了20成功垫底,恭喜wkc喜提120成功rank1;day2我和wkc都是110并列rank1,开森;day3好难,胡峰让我们第二天提交,没人切题真奇怪,我55分居然第4(过了一年看看第二题就是个弱智二分);day4挺水的,我220才第3,被五年级的wcx280分吊打;day5是最后一天,4道题,因为文件名写错120->20,rank2->5。整个5天也是一脸懵逼,但是学会了不少,比如卡特兰数,错排的公式,一些基本的组合数芝士,甚至还有单调队列等等,当时的我基本没学到啥,但是我到初二初三的时候,回头看看这次培训的课件,还是收获颇多的。
这段时间认识了不少的OIer,有本校也有45中等其他学校的,有同届的也有学长学姐(学弟学妹认得的比较少而且基本都是比我小一届的),咱就不一一列举了。
初赛到了,一切准备就绪。这选择有一点不会嘛,好就这样选吧,填空只会1个吧(一共俩),阅读程序感觉都对的,完善程序……emmm每次都有个别不会的,但也不影响大局,估计80多吧。晚上答案就发了,啥阅读程序错俩?一个很弱智的粗心错的,另一个我理解错程序了。72.5我没戏了,真的成了老师口中的炮灰,不过听说我们学校初一几乎没有上75的。不过还是想哭,那几天我整个人眼眶都是红的,第一年就拿下特长生的flag就要这么拔掉了。
出分果然稳的一比72.5,不过好像不少人都是考的比估的低也不知道为啥。年级就我和zqm同分72.5,其余全部没过70分。记得周三那天放学,我妈说告诉我一个好消息,入围线70.5!嘿嘿嘿,俺入围辽,准备复赛辽……不过就这水平复赛能考啥?省二?争取一下吧?不过省二好像就有特长生了,加油吧。zyd 94,cpy 91,被88分的lyh嘲讽,“看我天天打游戏还比你高这么多”,看来离他们这些高手有很大的差距,初生牛犊不怕虎的我也立下了复赛打过lyh学长的flag(当时感觉还是cpy zyd他们强一些无法望其项背,lyh还是差一点)。
文化课先缓一缓,反正考完NOIP还有3天复习呢(暴论),但课还要上作业还要写,但也不复习了晚上几乎就在刷洛谷(我在2014.10.18注册的,大概六年了,怀念死了),而且周四周六晚上都有老鲍的课,周日上下午都有学校的课,学校请来了合工大的学生来教。这段时间学了些相对高级一些的东西吧,比如说floyd,dijkstra,prim,快速幂,01/完全背包等等,感觉省一还有点希望的,很快就到了复赛了。
试机前一天,我妈一直和我说让我别想多,初一能进复赛就已经很值得骄傲了。但我的目标就是省一。当时看到花名册,整个50中就仨初一的入围初赛了,另一个是西区的jxb,45中却有9个初一,我大概认得一大半的样子,果然还是45中强的多啊。当时我试机等待时还在背诵政史地生(可怜的娃下周二~周五要期中考试啊,而且最近小考成绩都好烂),然后发现合肥一中还有地下通道的时候,我想这合肥一中真的又大又漂亮,我一定要拿了特长生考到这儿去。试机的时候,我写了个a+b感觉文件没有问题,又写了个kruskal和SPFA就走了。
比赛日到了,先看题,这个T1有点水,先用选择排序排一下,再搜索俩数,二分第三个数不就行了吗,O(n^2logn)非常好(我是不是脑子有问题n<=100不如O(n^3)省时间啊,当时没有这个意识),不过就这题我都写了1h;T2比例简化怎么简化啊?我不会先跳过;T3螺旋矩阵的50分有点水啊,建数组直接模拟心细一点就对了,100分这怎么搞都超时啊?算了不管了,都150了省二不是稳稳的?T4好难啊,直接暴力搜索,连50%都过不了,也不知道啥复杂度。
注:当时我并没有算时间复杂度的意识
估计100+20+50+0=170,那天写完代码天黑了,放学路上碰到jw学姐,她和我估分都是170,没碰到cpy和zyd两位大神,不过问了估计也白问肯定被他们按在地下锤。
那天累个半死,晚上父母带我回到家旁边的地方吃了点,稍微背背书就睡觉了。
然后周日开始就疯狂背书了,哎,七门课有五门要背书(除了数学英语)。第一次期中考试不知道会怎么样?就以50名为目标吧(全校800人),但以我平时考试的划水成绩感觉150都难进,不过生物地理都没考过试(毕竟中考不考老师也不是那么重视)也讲不清,但还要排名。
注:当时的我还是很看重排名的,因为初一初二每门课满分都是100分没按照中考模式,但现在想想,有那时间去背书(因为政史是开卷,语文中考只考课外阅读,但初一初二学校考课内,生物地理中考不考),不如花点时间去学高中文化课亦或是学竞赛,而且背了到初三也是半点用都没。为了那点蝇头小利,不如将目光放得长远一些。
期中考试感觉考得就那样吧,听说第一次大家都会很烂。最后一天考完的中午,45中马晓阳用数据把我市代码都测了,我看了我是170(100+0+50+20=170),zqm居然175刚好比我高,气死。
然后到了下一个周一,只发了语数外成绩,数学英语没区分度几乎都97~99但我语文还没过班级中位数我死透了,当时感觉年级150名都进不了了,但是晚上回家听说NOIP成绩出了,听说了老鲍班上几个比较强的人的分:45中和我一届的wxr230(他是小学淮南因为这个挖来的),剩下3个初三的wh200,cpy200,zyd195,看上去应该都比我高。我紧张的点开QQ邮箱,看完以后我乐了:100+40+50+25=215,全省86名,看上去有省一(AH的初中组在当时是全国3~5名的水平)。然后后面期中考试出分,背书的小四门却挺好,总分663/700,感觉前50有戏(但听学长说这个分如果不是第一次考试一般只有80名),最后居然正好20名真的很惊讶,但zqm恰好比我高2分,wyx恰好比我高3分。第二周又得知省一线210我刚过线……真的是好运连连。合肥市初中组就俩比我高,都是45中的,都是小学开始就拿奖的,一个是后来一直坚持学OI的wrq,285分,另一个是上高中转PHO&文化课的wxr,230分,我成了一匹黑马,而且是栽在T2这个简单题上面(省一人这道题的除了我其他人都有至少60分,而且80以下的都屈指可数),但是要不是T2数据太水我恐怕就省二了,感谢CCF(连double写成int并且是瞎判断的都有40我也是醉了)。还有比较高兴的是超过了原先模拟数据比我高的zqm(他最终数据190分),还有炸惨的只剩两位数的lyh。
或许就是因为这次NOIP2014的省一,让我在合肥初中OI届小有名气吧,这或许也是我后来把大量精力投入OI的原因。