蓝桥杯PyA一个月速通省三 | 蒟蒻萌新の游记
第一次鼓起勇气参加蓝桥杯,竟然拿了省三。
好不真实啊……
以为自己肯定没奖,没想到居然RP爆棚,侥幸擦边了。感觉自己的努力配不上自己的成绩,肯定有人比我努力得多但没有拿到省奖,OI赛制就是这样不公平。
念及初一时,我写出了人生中第一行C++ 代码,“Hello World”运行出来之后,激动万分,天真地以为自己掌握了操纵整个世界的奥秘,澄澈的眼神中倒映着星辰大海,烟波蓝。
对算法产生兴趣是在2月末(嗯对,就是一个多月速通的),期末Python考试之后,考场里几个男生在讨论洛谷,听上去好厉害啊!我也跟着注册了洛谷账号,匆匆忙忙写了几个橙题,算法一点没学,就参加了二月月赛Div.3试试水,从头到尾靠着一点朴素的数学直觉在做题,居然考了105分,排进了前40%。再加上期末高数和Python考试考得还不错,卷面一门99一门97(虽然只是文科高数和Python的基础语法,但还是给了我莫名其妙的自信),当时觉得自己也可能还有一点点算法天赋(?),于是头脑一热就报名了蓝桥杯省赛……
其实我已经预料到考试会考砸了。考前因为系解要考试,所以空出了一周专门去备考系解了。一周过去,代码都敲不熟了。考前四五天才投入第二轮复习,之前背的算法板子全忘干净了,唉。
听说数论考得多,于是考前一天紧急复习(预习)了一下快速幂和费马小定理求逆元,背着敲了几个DFS板子(敲不熟呜呜呜),又看了看前缀和差分、二分查找这些已经掌握得比较熟练的算法找找自信,以及写了几个数据结构(链表、栈、队列、哈希表,当时还没有学到树和图)就洗洗睡了。因为心里没底,晚上也没怎么睡着,第二天还要6点起床去赶车。当时我还无从知晓考场上将会面临何等考验……
两个填空真是开幕雷击。第一题,纯暴力的话,常数复杂度
第二题是个很简单的数学题,放高中数学卷上考都不为过,就是注意一下奇偶讨论就行,但我考场上忘记扣除掉取到原点的情况了,痛失5分T_T(这个填空题的5分也跟当年高考数学一模一样!谁懂啊家人们!!)真的好讨厌填空题!大题起码能有点过程分,填空题错了就是错了,神鞭之下众生平等,不论你只差一步之遥,还是根本没有思路,只要得数不对,最终的下场都是一样的。仿佛又回到了高中学数学那年,怎么考都是八九十分,一百零几……真的想弥补一下高中的遗憾,把数学好好学一学。现在这个时代,科技迅猛发展,人工智能浪潮席卷而来,学不好数学就跟文盲一样:没学过线性代数,就理解不了图像处理的方式;没学过傅里叶分析,就理解不了音频中的频率分布;没学过偏导,就理解不了人工智能算法中的梯度下降……你可能感觉不到数学知识的存在,但处处都需要数学。在理工科的世界里,数学就像氧气,离了它根本无法呼吸。
大题只AC了第三题和第五题,两个题都是一眼就能看出思路。已经被第一题折磨疯了的我只能赶紧把这两个题敲出来。死手快敲啊!怎么一紧张手都抖,打字都打不对了。检查了一遍,样例都过了,我也没去管。
第四题是个小学奥数题,我知道用辗转相除法可以求最大公约数,可是我忘了怎么已知最大公约数求最小公倍数了。平时都是用gcd和lcm函数糊弄过去的,但考场上IDE的版本太老,根本不支持这俩函数。简直了,我怎么可以蠢成这样!考场上算第一题算得太久了,时间不够了,导致大脑宕机。出了考场才想起来,如果
倒数第二题是个概率论的几何分布,但是一整年没碰过概率论的我已经差不多忘了这种题怎么做了,连状态转移方程都列不出来,列的期望递推式也不会解,也不知道自己列得对不对。一开始我就当数学题算的,后来才想到DP这种算法,但我平时压根没练过,感觉好难啊,平时都放弃了,考场上也肯定是做不出来…
剩下的题目来不及了,要么暴力要么胡乱编的,要么索性就“面向样例编程”,无论如何把测试用例给凑出来了。
考完试之后被自己气哭了,感觉自己好没用,为什么不好好刷题,为什么上了大学之后没有好好学一学概率论,为什么考场上连小学奥数题都能忘了怎么做。在偌大的二工大校园里逛了一大圈,那天,气压非常低,雨下得淅淅沥沥,像花洒喷雾一样,慢慢把整个人都淋透了……一边呜呜哭着,一边在校园里漫无目的地骑着单车,心里好像被一块大石头压住了,呼吸很困难。感觉自己好辛苦啊,付出了很多努力连一点点进步的希望都看不到,身边也没有人能理解自己的感受。
成绩出来了,是省三,但同时也是上海市所有省三选手里的倒数第三名,给交大狠狠丢脸了。交大总共只有两个人报名了同赛道的比赛,一个就是我,另一个是我的同班同学,他真的特别厉害,在输入出现问题的情况下都能拿到前排省一,如果他正常发挥,可能就全市第一了……人外有人,天外有天,这个世界上总有比你优秀的人比你更努力,想内卷的话是卷不到头的。所以,不要跟别人比较,跟自己比能有一点进步就知足了。
这篇文字我也不知道有哪位有缘人能够耐心读到这里,希望看到的同学也不要冷嘲热讽,我也知道自己很蒻,也一直在努力学习了,只不过就是努力暂时没有看到结果而已。这段时光,我把它叫做“扎根”,相信日积月累下,总有一天会从量变达到质变的。
不说没用的,我要去研究我的二进制字符串了。研究了一上午,越想越迷糊,每一行代码都能理解,但让我自己闭卷写,却一行也写不出来。那个65536怎么凑的?如果是一眼看出来的,该是拉马努金转世吧,小一点就TLE,大一点就MLE。可能就是我做题太少了?多思考思考,沉淀沉淀,说不定想想就能突然想明白了呢。
不知道要不要二战,感觉二战不一定会有一战高。 努力的意义究竟是什么呢?
……
多年以后,当你回忆起你的大学生活:
你可能记不起系解某个知识点在书上哪一页,但你一定会记得,那天下午偷得浮生半日闲,跟朋友们溜到小花园里玩,一起拍了几张好看的照片;
你可能一个算法板子也想不起来,但你一定会记得,自己曾微笑着迈进了算法赛考场,即使什么也不会,也坚持答了整整4个小时,直到考试结束那一刻。
那些拼尽全力所获得的成就,最终只是变成了简历上几行微不足道的仿宋字。但时光夹缝中那些不可被替代的瞬间,才是人生中最宝贵的财富。
人生来一遭,就是体验嘛。\ 区区三万天,试试又能怎?
省三的倒数第三也是奖,玫瑰金也是金。不接受任何反驳!
我还会继续研究那个二进制字符串的!哪怕仍然看不懂,只要认真思考过了,总是会有提升的!
总有一天,它也会像当年那个“Hello World”一样,对我微笑。
\ ---The End---