当前位置: 首页 > 原创新闻 > 大学生acm和ctf哪个更值得入坑?

大学生acm和ctf哪个更值得入坑?

发表于:2021-04-12 14:03 作者: mtr 阅读数(7233人)

ACM相对于CTF,内容很单一,就算法与数据结构,知识面窄,但就是这很窄的知识面,大部分人直到退役都不能全部掌握,但是它门槛低,就算你大学之前毫无编程基础,大一开始刷天梯赛题集入门,cf,每场补题,到大三也能拿至少区域赛银了,但是要思考的是,这个银有多大意义?如果为了保研,ACM性价比绝对要比发论文低。毕竟在研究生面试的时候,导师们会更关注你的论文,而不是这种算法竞赛。

如果为了工作,那么恭喜你,你所学的算法与数据结构是面试必考项目,你可以在这方面很突出,但同时很不幸,面试过后,你的项目能力可能不及其他人。项目里很少会用到算法竞赛里用的这些东西,反而可能会因为竞赛养成的某些坏习惯(变量命名,开空间)而被骂。最好要么把ACM当做锻炼自己思维以及编码能力的工具,要么就为了荣誉,在这里做出一番成绩,为了功利,性价比低。

CTF的话,很难有一个人面面俱到,因为它的范围太广了,这是一个更看队友的比赛,这并不是说ACM不看队友,ACM是三人竞赛,但是通常做题是各做各的,实际上如果你一个人自己打,也不是不能,毕竟大部分知识是三人都会的。

但是CTF不是,分工很明确,你web,他pawn,我reverse,我的领域你不懂,你的领域我发懵,所以,如果选择CTF,一定要确保你有可以坚持下去的队友,并且保证他能去专精他负责的方向,你能去专精你负责的方向,人人不当短板。其次,CTF更加考验团队合作能力,一道题可能综合多个方向的知识,有时候需要掌握不同知识的人通力合作才能做出。再然后,CTF很吃你的知识面,如果你知道的知识特别多(主要但不仅限于计算机知识),那么你就是适合CTF的。但假如你连linux都没用过,或者你不了解基本的计算机/网络组成原理,不会任意一门编程语言,并且没有引路人,那么你是不适合打CTF的。

如果对算法更为感兴趣的话,即使不是为了拿奖,也可以试试参与一下acm,锻炼思维能力的同时也提高了敲代码的速度。日后在研发岗位的面试时也更有经验。

CTF对应是网安的岗位,相对于研发岗位上来说,市场上的需求要少很多,但是没有研发那么累,ctf很有趣,也很实用,能感受到更多的成就感,ctf的奖金也比较诱人。尤其是线下 AWD 比赛(对抗攻防比赛)中发现新漏洞,种马,一轮 flag 获取成功的体验,正反馈++