返回首页
您的位置:首页 > 新闻 > CCF新闻 > CCSP

【我与CSP】山东大学严一涵:CCSP是展现综合能力的绝佳舞台

阅读量:193 2023-01-03 收藏本文

2022 CCF CCSP已于12月11日在各CSP认证点成功举办,山东大学严一涵获全国赛总冠军。近期,我们陆续邀请部分2022CCSP获奖同学分享竞赛经验,希望这些分享文章,能够帮助更多的同学提升竞赛能力,取得更大的进步。本期推出的严一涵就读于山东大学。山东大学作为CCF CSP认证点高校,是CSP认证优秀单位。


非常欢迎更多CSP优秀学子分享自己的宝贵经验,联系:csp@ccf.org.cn


横图



图片

一、梦开始的地方


梦想并非令人羞于启齿之物,很多人最初的动力都来自纯粹的梦想,我也不例外。当时还处在小学阶段的我,凭借着一份热情与兴趣,开始学习算法知识。儿时的梦想引导我走上了算法竞赛的漫长道路,彻底改变了我的人生轨迹。


当然,一开始我其实没有明确的目标,而当我进入初中,我了解到了CCF举办的全国青少年信息学奥林匹克联赛,也就是大家常说的NOIP之后,我好像找到了目标和意义,便立刻投入其中,报名参加了普及组的比赛。尽管这次我遗憾地获得了一次无功而返的体验,这一件事已经在我心中埋下了种子,等待某一天生根发芽。从我与CCF还有算法竞赛相遇的那一刻起,我就一直怀抱着最大的热情,全身心去追寻更高的领域,去超越自我。那次失败经历之后,次年我获得了普及组一等奖;而到进入绍兴一中之后,我付出了更多的时间与精力,一直待在机房里训练,最终获得了提高组一等奖和两次CSP-S一等奖。很遗憾我最终无缘NOI,不过这些经历已经让我感受到了努力带来的回报。


那真的是一段令人难忘的时光,一切芜杂外物都像是销声匿迹,我的人生、我的经历、我的精神,都可以用一个个定格在机房座位上沉思的剪影来概括。这段时间我取得的种种成绩,都需要感谢绍兴一中两位教练的辛勤付出、不断鼓励,感谢家人对我这种人生选择的默默支持,最后在心里感谢一下自己当初的梦想。


图片

二、CCSP再遇CCF


高考的压力让我不得不远离了竞赛,而在成功进入山东大学之后,伴随着平台的提升,我有更多可以去追寻的目标了。我本以为那种扎根在机房、浸泡于算法的日子,已经是过去式了,却没想到伴随着学习的深入,老师又一次把算法竞赛摆到了我的面前——ICPC竞赛与CCF举办的CSP认证和CCSP竞赛,可以说是重新燃起了对算法竞赛的兴趣。在山大初来乍到的我,马上就积极争取,报名了这些比赛,最终获得了ICPC区域赛金牌、EC Final银牌和CSP 450分的成绩。当然,这两种竞赛还是有很多不同之处,相对来说ICPC重视传统的算法题,题量较大,重点在思维上的较量,团队的配合;而CCF举办的CSP系列赛事,尤其是CCSP全国赛,更加看中选手的综合知识水平,着重考查计算机系统能力,还有面对实际问题的解决能力,CCSP在形式上相比过往其他竞赛有很大的创新。


通常来说CCSP为线下举办,赛程长达12小时,但是2022CCSP受疫情影响,由最初贵阳现场赛改为各CSP认证点举办,采用6小时3道题的形式,题目难度较大。可以说,即便我已经对CCSP的形式和内容有了一定程度的心理准备与知识储备,当我真的坐到场地中,打开赛题的时候,我还是感觉到了题目的复杂——甚至说赛制直接带来的复杂性,尽管只有3道题,整体的阅读量可绝对不算小。这一次的CCSP第3题,直接给出了一个完整的代码框架,调用了一个第三方库,让选手自行借助CMake来链接并调试。这样的出题风格,可以说相当大程度上还原了真实的开发体验。在赛场上,开始编写代码,开始忙于调试的我,内心还是有些紧张的,经过6个小时的激烈角逐,最终我拿下了让我自己都感到惊讶的成绩——全国总冠军。


图片

2022CCSP线上颁奖会


我要感谢CCF给了我们这样一个舞台,克服疫情困难,让我们得以展现我们的能力。当然,我也由衷感谢山大给我们选手的鼎力支持,打造了最好的训练环境和参赛环境。


图片

山东大学(威海)比赛现场(左一)


图片

三、备赛之策


最基本的方面,也是对于任何水平的选手都有效的方面,那就是收集资料。CCSP允许携带纸质和电子的资料,因此,收集整理合适的资料对于实际比赛显然有着巨大的帮助。而这一点正需要选手们平时的积累,事实上如果能够把过去学习的知识,用自己熟悉的方式,加上个人注解的形式保存下来,就能达到更加得心应手的效果。除此之外,可以用类似ICPC选手挑选代码模板的方式,准备一些能够用得上的代码片段,既能够加快编写速度,减少调试时间,也能够在必要的时候,根据题目信息,按照模块去浏览相关常用算法,用筛选的方式找到思路。


平时的积累,首先是各类算法知识,需要选手熟悉数据结构的许多基本概念,对基本算法,尤其是动态规划这一类变化较多的算法,有比较深刻的理解;其次对于CCSP选手来说,掌握专业课的知识也至关重要,在系统实现题的题目理解方面,选手对相关知识的了解程度越深,理解难度也就越低,所需时间越少,不会被复杂的信息困住;最后是算法实现能力,这一点就需要选手长时间地坚持刷各种OJ,打好基本功,才能在比赛过程中灵活运用。


而根据2022CCSP的经验,熟悉开发工具与开发流程也是备赛的重要一环,例如此次系统优化题C++第三方库的使用,CMake调试环境的要求,对于以往接触过C++项目开发的选手来说,必然不算陌生,即便是在赛场不那么熟悉的环境下,也能够较快地适应。当然,从另一个方面来说,这也提醒我们选手在平时就有计划地熟悉实际的开发,来运用我们在专业课中所学的知识。


最后是临场的心态调整,不论是CSP还是CCSP,计分方式与ICPC不同,都含有部分分,也都考查了选手的实现能力。因此CSP与CCSP往往包含了一些文本量较大,代码量同样较大的赛题,也就是系统实现题,对于这些赛题,选手可能需要根据个人水平,稳扎稳打,选择恰当的子测试点去入手,同时保证代码具有可扩展性。如果一开始就想着必须拿到满分,反而可能陷入调试困难的境地。此外,尽管跟着榜单来掌握对题目难度的恰当估计的确是一种有效的思路,实际比赛中也不必盲目跟随大流,每个人擅长的方面有所不同,很多时候必须有所取舍。


图片

四、结语


这次2022CCSP的经历是我人生中一次宝贵的体验,但是我还有很多不足之处,未来我也会和大家共同努力,希望下次CCSP我还能和大家同台竞技,也希望CCSP能够越办越好!


关于CSP和CCSP 

CSP注重考查计算机算法、编程等基础能力,正逐步成为业内评测软件能力的基本标准。目前CCF已在全国授权设立了178个CSP认证点,至今已有181857人次参加了CSP认证。在CSP的基础上,CCF于2016年创立了面向大学生的年度竞赛CCSP(大学生计算机系统与程序设计竞赛),至今已成功举办6次,参加CCSP的选手均为CSP成绩优秀者,CCSP更注重考查计算机系统能力,选拔的是顶尖人才。