给ACM小白的学习建议(干货满满)

一些建议:

PS:本文只是给大一准备主打ACM小白和不主打ACM又希望拿到一定奖项(非XCPC)(比如蓝桥杯等)的同学的建议,不是给已经专业ACMer的建议,ACM大佬看到请划走(膜拜膜拜)

PS:不建议小白盲目刷题,本人亲身经历,虽然刷题打比赛可以快速提高熟练度与思维能力,但是往往容易忽略了知识点的重要性,一段时间后就很容易达到瓶颈,难以提升。

一、确认要学的知识点

声明:本图片引自知乎用户“walker shi”,是ICPC东亚区总决赛裁判长的知乎账号。欢迎大家关注学习

原图链接:https://zhuanlan.zhihu.com/p/454647571?utm_psn=1800476414505525249

如有侵权,请联系我QQ(3563805651),将第一时间删除

这是知识点图。(如果你发现每次遇到一类题都不会写,也补不明白的时候,一定要先学知识点)

由于每年ACM难度都在增加,所以对于准备专攻ACM的小白们,图上的难度可能滞后了(就是图上金牌难度现在可能只有银牌难度,以此类推),但是还是不妨碍对这知识点表去系统学习算法。

二、边学边实战

千万别等到所有知识点都学完才去实战,因为你永远都可以更完美,如果你这么想的话那你永远也准备不好。我的建议是每周至少两次。但是也千万别忽略了知识点的练习。

三、学习方法

对于知识点的学习方法:我的建议是:

1.先弄懂知识点:

可以通过直接去B站或者搜索引擎和学习网站(我会放在文章末尾的附录里面,可以通过目录直接跳转)的视频,结合刷题网站的板子题(完全靠该算法解决的,也叫裸题)去学习,不懂可以看别人的代码,或者板子题的经典题解。

ps:要是实在没法弄明白,可以先抄别人的代码(平时),先跑出来(不是直接复制粘贴,是手敲,要确保可以默写),后面边用边理解,用到一定程度你就会恍然大悟。如果是板子,理解了就行,可以保留到电脑上,比赛的时候打印下来(很多比赛可以带纸质材料),典型的就是(二分法、快速幂、并查集、最大公约数等等)(平常打codeforces和牛客什么的可以直接复制粘贴、做非板子题也是)

2.去做相应知识点的非板子题

在学习完知识点之后,可以通过刷题网站去找到相应知识点的题目。当前刷题和比赛网站有codeforces(刷题、比赛)和acwing(刷题、网课)、洛谷(刷题,有基础题单和各种知识点的题目,板子题也有,而且可以查看题解(不要一上来就看题解)需要锻炼独立思考能力)、牛客网(里面有小白赛和各个学校的校赛,还有一些大型赛事的题目)、蓝桥云课(里面有小白赛,可以刷题和比赛(比赛意义不大))(蓝桥网站不是很推荐)(但是蓝桥杯我非常推荐去打,毕竟相对题目简单,而且好拿奖,而且规模相对较大)

3.刷题和比赛网站的简单讲解

PS:codeforces在篡改猴上有个脚本叫codeforces Better带翻译如图:

还可以自己从(codeforces简称CF)Vjuge上创建一个比赛和小伙伴们一起练习。

在edge浏览器里还有一个插件叫CF Analytics如图

可以分析你写的题目运用了哪些算法,以及你写的题目的难度分数,这可以有效避免你一直刷简单题自我感动(我之前就是哈哈哈)。效果如图(这是CF榜一tourist的主页)

总的来说,洛谷是题目最全面的刷题网站,适合学习,CF适合打比赛和补题,牛客网有各个学校的校赛也很有意思,有时间蓝桥云课的小白赛可以打打(如果你是刚刚上大一并且想走ACM道路的话)但是千万别在上面放太多的时间(玩玩就行),小白的话网课建议买Acwing上的网课

如图这个比较好入门:

别的不推荐(这个课他会让你拼团购买,实际上24小时自动拼成功)

这里面不仅有课程,也有对应的题单,和题目讲解视频,还有判题机。如图:

非常适合新手小白。

然后就是牛客了

这个多校训练营的题目也非常不错,但是牛客上面的网课别买!!!

在讲讲最重要的codeforces,如图:

这是比赛页面(如果你的页面是英文那就是你的codeforces Better没开翻译,调一下就好)

常规比赛分4个难度分别是div1 div2 div3 div4(div1+div2)是介于1和2之间的难度

按难度排序1最难(小白打不了,除非之前基础很好)

4最简单,很多是语法题

比赛会和王者荣耀巅峰赛一样有积分(叫rating)

新号前面6场是定级赛,其他正常。

div4 是最基础的语法题,很适合小白和新手刷分(但是手速要快一点哦)

div3 比较简单,可以好好抓住机会练练。

div2对有一定基础的小白来说也不是不能打,第一题和第二题往往是思维题,熟练之后也可以很快开出来(偶尔也能开第3题),但是容易掉分哦(最好还是多打打,实在不行想上分后面还可以开小号,不想开小号也可以去补题,写之前div2的题目,毕竟比赛时间一般都在晚上10.35开始,打完都1点多了(比赛根据俄罗斯的时间)。codeforces的rating超过2000分以上的话甚至去大厂招聘的时候都可以写在简历上了(当然看你是应聘什么岗位)(一般算法岗有优势)

总结

最后做个总结,小白要兼顾学知识点和刷题和打比赛,不能一直准备着不去赛场上打磨,也不能总想着打比赛,不从根本上提高自己很容易进入瓶颈期,总之,正确学习算法,希望大家都可以在自己的道路上越走越远,祝各位奋起扬帆乘风破浪,披荆斩棘前程似锦!!!

附录

codeforces网址:Codeforces

牛客网网址:牛客竞赛OJ_ACM/NOI/CSP/CCPC/ICPC_信息学编程算法训练平台 (nowcoder.com)

洛谷网址:首页 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

Acwing:AcWing

蓝桥云课:算法赛 - 蓝桥云课 (lanqiao.cn)

  • 35
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值