2022 CCF CCSP将于12月11日在各CSP认证点举办,报名持续进行中,报名截止时间为2022年11月28日。近期,我们陆续邀请部分往期CCSP获奖同学分享竞赛经验,希望这些分享文章,能够帮助更多的同学提升竞赛能力,取得更大的进步。本期推出的邱慕凡就读于中国科学技术大学。中国科学技术大学作为CCF CSP认证点高校,是CSP认证优秀单位。
非常欢迎更多CSP优秀学子分享自己的宝贵经验,联系:csp@ccf.org.cn
与CSP和CCSP的相遇
在大二时,我从老师那里知道了与CSP比赛的相关消息。之后我便从官网了解到了有关CSP比赛的赛题和赛制的更多信息。CSP比赛更接近我高中时参加过的NOIP系列赛事,单人单机,自己独立解决算法题目,同时题目类型也与之类似。
我高中时参加过NOIP系列赛事,因此对CSP的风格较为熟悉,感觉颇为亲切,因此当时就报名参加了比赛,也收获一次良好的参赛体验。
在参加CSP后我又了解到了CCSP,并因为在之前的CSP比赛中取得了较好的成绩从而前往深圳参加了2021年的CCSP竞赛全国赛。在这之前我了解过CCSP竞赛的往年试题,并发现它的题型、赛制和我之前接触过的NOIP/ICPC系列赛事都有所不同。其中的赛题更多涉及到了算法在真实场景中的应用,颇为新颖和有趣。
2021CCSP全国赛银奖获奖证书
CSP与CCSP的体验
CSP的比赛与NOIP系列赛事并没有太大区别,甚至因为可以实时查看自己的提交结果,使得比赛过程整体比起NOIP还要轻松一些。只需要提前了解好编程环境、准备好相关参考资料,做好准备即可。
2021CCSP竞赛合影(右二为邱慕凡)
CCSP比赛则是另外一种完全不一样的体验。具体来说:
CCSP更加侧重于对选手代码水平的考量:例如之前的几届比赛中都出现过复杂的编程题,编程实现中的细节较多,需要选手有较好的代码功底,主办方也贴心的给了12个小时的充足的时间让我们来完成程序并调试。
CCSP考察的知识面更广:汇编、数据库、操作系统、缓存设计等相关背景的题目都有在CCSP之前的比赛出现过,而ICPC与NOIP系列赛事则主要侧重于考察选手的算法水平。
CCSP还考察了学习并运用新知识的能力:例如在2020年的CCSP比赛中,出现了一道与版本控制系统git有关的题目。出题人在题面中科普了版本控制相关的知识,同时用了七页的篇幅来描述选手需要实现的迷你版本控制系统需要实现的功能。又比如2021年与文件缓存系统相关的题目,出题人现场下发了若干篇论文作为实现的参考。
2021CCSP竞赛之后的华为开放日(左一为指导老师徐伟,右一为邱慕凡)
因为CCSP可以携带纸质和电子的资料,因此我在赛前花了较多的时间来整理可能用到的资料,例如各类常用算法的模板以及一些较为经典的书籍的电子版等。同时也查阅了往年的真题,事先对于CCSP灵活多变的题型有了心理准备,不至于考场上措手不及。
2021年的比赛中,前两题是较为规矩的算法题,从第三题开始考题就不再局限于算法了。例如第三题是根据题目描述来实现量子比特计算的模拟和优化,作者为我们科普了量子比特的模拟流程、部分更新优化、顺序交换优化、比特重编号优化等技巧。我在这题上花了两小时实现各种细节,感受到了量子比特计算的奇妙。又比如第四题是要求实现一个缓存控制系统,并且作者还附上了各类论文让我们参考;第五题是要求设计一个高效的键值集合,类似于STL中的map,但是需要做一些更加细致的优化等。
总的来说,参加CCSP比赛让我学习到了很多知识,同时也扩展了课外的知识面,对量子比特模拟有了一个简单的了解,对缓存设计的复杂性有了更深入的认识,动手实现也让我对相关理论有了更加深入的了解,收获颇丰。
总结
CSP比赛主要还是考察算法功底,掌握动态规划、图论等经典算法,以及栈、队列等经典数据结构就可以有较好的发挥。
而CCSP则对选手的综合水平提出了更高的要求。除了算法外还要了解更多与计算机系统相关的知识,这要求选手在操作系统、计算机网络等方面也要有较好的基础。同时与其他系列赛事很大的不同是,CCSP的题目可能提供大量的附加材料,因此也考察了选手们学习与临场发挥的能力。如何快速的从资料中提取出其中有用的信息,并且编程实现自己的想法,这也是一个很大的挑战。
总之,感谢CCF提供的比赛平台。CSP认证让我重新感受到了高中时参加OI竞赛时的紧张刺激的感受,CCSP竞赛则让我感受到了完全不一样的比赛风格,同时也扩宽了我的知识面,成为了我学习过程的一笔宝贵财富。
备考资料
关于CSP和CCSP
CSP注重考查计算机算法、编程等基础能力,正逐步成为业内评测软件能力的基本标准。目前CCF已在全国授权设立了178个CSP认证点,至今已有181857人次参加了CSP认证。在CSP的基础上,CCF于2016年创立了面向大学生的年度竞赛CCSP(大学生计算机系统与程序设计竞赛),至今已成功举办6次,参加CCSP的选手均为CSP成绩优秀者,CCSP更注重考查计算机系统能力,选拔的是顶尖人才。