我的竞赛经历总结

· · 学习·文化课

更新公告

2026.1 第二版 重构全文结构使得文章更有逻辑,新增了“学生应该怎么做”的内容,修正了原文中的部分笔误。

2025.10 第一版 文章是从3月开始断断续续敲的,所以逻辑不大连续,请大家见谅。

前言

从2014年开始学coding,2017年第一次去NOIp普及组复赛,一直2024年JSCPC之后就没再参加过正式比赛,最后到2025年秋季开学正式和OI/xcpc说再见。虽然万分不舍,但我只能亲手向曾经在学科竞赛系统的那个我告别。

个人竞赛简历与相关学生组织经历

2004年出生

初中 2016.9-2019.6 金华市第五中学

奖项:NOIP2017普及组省二,NOIP2018普及组省一

高中 2019.7-2022.6 杭州学军中学教育集团文渊中学

浙江省杭州学军中学OI班(第三届)

奖项:CSP-S2019省一,NOIP2020省二,NOIP2021省二

本科 2022.8-2026.6(预计)东南大学 数学学院 数学类(强基)

硕士 2026.9(预计)-2029.6(预计) 东南大学 数学学院 系统科学

本科期间主要竞赛奖项:

时间 比赛名称 奖项 通过题目/用时 全体选手排名 正式选手排名
2022.11.06 ICPC2022沈阳 Bronze Medal 4题/564min 141/738 138/708
2022.11.13 ICPC2022西安 Bronze Medal 6题/591min 167/522 153/476
2022.11.20 CCPC2022绵阳* —————— 4题/309min 123/284 ————
2023.03.25 ICPC2022 EC-Final Bronze Medal 4题/762min 179/314 168/281
2023.05.28 JSCPC2023 Silver Medal 6题/550min 50/204 39/169
2023.10.15 CCPC2023秦皇岛 Gold Medal 6题/326min 25/260 23/240
2023.10.29 CCPC2023桂林 Bronze Medal 4题/500min 107/269 97/240
2023.11.05 ICPC2023南京 Silver Medal 7题/1124min 53/342 45/331
2023.11.26 ICPC2023合肥 Silver Medal 5题/633min 72/347 71/344
2024.05.12 JSCPC2024 Silver Medal 6题/739min 37/236 24/190

2024.8-2025.9 东南大学计算机科学与工程学院 CPC俱乐部 学生负责人(排名2/2)。

职责:共同负责CPC俱乐部的日常管理,负责校内的程序设计类比赛的举行,参与NOI/NOIp招生相关标准的制定。

关于OI职业竞赛生的变化

自招变成强基对各种OI比赛的影响是:本科招生基本只看NOI+NOIp或NOIp+CSP-S,NOIWC、CTSC、APIO等比赛基本不再被参考。

自招时期的大部分强省OI职业竞赛生:以强省NOIp一等奖为底线,rush更高的奖项(TP营/CTSC/APIO/NOIWC),冲自招降分

强基时期的大部分强省OI职业竞赛生:以强省NOIp一等奖为目标,拿到就跑(因为对大部分人而言,强省省队几乎不可取得)

结果:取法于上,仅得其中;取法于中,故为其下。把NOIp一等当底线冲更高奖项,结果是大部分人能拿到NOIp一等;把NOIp一等当目标,结果能有多少人拿到NOIp一等都是个问题。

关于OI的教育差距和奖项设置的问题

现状

强省情况:14年IOI国家队变成了浙江队;17年浙江某高中出现了OI班,19年浙江另一高中也出现了OI班;强省省队都是NOI国二起步,某省进省队难度堪比进国集。

那弱省呢?山西至今全省没有正规的OI教学,高手完全依赖去外省培训(山西全省有没有系统的计算机教学都存疑);内蒙古曾经省选爆0选手进省队;甘肃曾经凑不齐4个省队选手;青海到2023年才有NOIP,西藏至今没有NOIP。

问题

结论:相比另外四门学科竞赛发展时间短,地区差异过大,弱省有一群连代码都写不明白的的拿到NOIp一等+后置位NOI铜难度极低,结果是强省省一和国二之间缺少梯度。(虽说各科竞赛国集,国二和省一之间的最低收益也缺少梯度)。

在五大学科竞赛内部比较,OI的国一和国二都是人最少的,OI的省一是人最多的,省一和国二之间的差异(不论是人数还是收益)都差太多。

结论

因此,985基本不大能给NOIP省一完全肯定的保障,倒是挺乐意给NOI国二发政策。

我一直觉得应该在现行的NOIP省一和国二之间加一档全国统一排名的奖项,比如扩NOI参赛人数和NOI获奖人数。之前某些人只说扩NOI国一+国二人数,其实是不对的。现在单纯的NOI后置位国三连我校都不想捞,说明现在NOI获奖比例其实是没问题的,有问题的是NOI参赛人数。应该扩强省的省队人数(NOI参赛人数),考虑至少让强省省队的难度和NOI国二的难度大致相当。

关于总体的本科招生政策

现状

五大学科竞赛相关的学院都希望保护竞赛生(尤其是计算机学院,毕竟大部分计算机院的普通新生在入学前完全没碰过代码,日常:招进来一群高考分高但学不会写代码的)

从实际招生情况来看,一届的NOI国一+国二完全不够清北华五人分的,清北之外的学校都不可能单纯依靠NOI国二及以上的选手,必须招省一的人。(具体数据分析看后面)清北华五人以外的学校收NOI国二选手基本和强基没关系,这些学校应该给国二的是破格录取而非强基破格入围。

但所有高校基本没法为了省一降低自己的最低录取分数线(除非走综合评价)。降低最低录取分数线这个口子也不能轻易开,容易出各种乱七八糟的垃圾事,这两年多少高校本科招办的老师被纪委带走了,参与过招生的心里都有数。

结果就是预留的名额比人多。本来自招时期按竞赛成绩选学校,高考成绩达标即可(我觉得这样更合理);强基之后变成竞赛成绩达标即可,按照高考成绩选学校。但说实话我也不确定怎么改会更好(改成综评那样?),我只能尽量减少信息上的错配。

然而前提是:能转专业\Rightarrow能裸分/综合评价(如果有)进这个学校。上面的要求只是门槛,满足上面的要求也不一定捞(虽然实务上基本捞进计算机类了,真就名额比人多)

招生官,学院和招办关系

合格的竞赛招生官的培养成本和周期不低于职业竞赛生,学生只要搞竞赛和文化课就行了,招生官要考虑的就不仅是这些了,但要是连竞赛和文化课都考虑不清楚的也没法当竞赛招生官。

目前,并没有足够的大学老师充当“合格的OI竞赛招生官”,学生期间没有相关竞赛背景的老师入职大学之后也没有时间和精力再去学这些具体的内容,能实际负责具体竞赛工作的老师也只能是学生时期就有相关竞赛背景的人,让学生期间没有相关竞赛背景的老师充当竞赛招生官,和“让行政(如导员)去搞学科相关的科研”没有本质区别。所以OI招生官的职责不得不事实上转移给在读学生

但是学校和学院又不可能完全信任学生,一是因为学生对学校的依赖关系没有教师那么强,二是前文所说的渎职甚至贪污问题(老师负责招生都能搞出这么多乱七八糟的事情,学生负责招生那下限更加群魔乱舞),于是在政策制定的环节中开始经典的左右脑互搏(在别处限制学生团队的作用),这也是没办法的事。

重点是:所有人做自己该做的事。招办不要做学院该做的事:整个招生过程(从政策制定到最终确定录取名单)应该以学院为核心,招办不要抢主导权。学院不要做学生该做的事:针对学科竞赛的具体行为应该由学生全权负责,学院不要抢这个部分的主导权。

个人建议

职业竞赛生基本不需要考虑清北华五人之外的学校的OI竞赛招生政策,毕竟最好的结果就是最高奖项以强省省一为主的学长集体写的,具体能写出啥选手在竞赛系统学了这么久了心里都有数——就那么几条,都是明牌打牌玩不出什么花头。坏的结果就是一群不了解竞赛的行政人员拍脑袋的行为艺术——参考25年HIT和XJTU强基破格许愿NOI国一。

关于强基和自招的对比

目前强基已经得到了相当多的优化,20-22年的不少逆天抽象问题(1:3入围,人为过度限制工学等等)已经得到了一定的解决。

我认为强基做对的两点

  1. 减少学校范围(减少到仅985)

强基从20年搞到24年,五届学生入学,中九/次九计算机强校的ICPC/CCPC照样在用强省省一为主组核心班底,中九/次九计算机强校以下的学校还是没有普遍稳定批量的收到职业竞赛生。从这个点来看,强基限制只有985确实没啥问题。(现在大部分985对各科竞赛生还是名额多人少的情况)

以下是一些被认为是偏弱的985(排掉优势学科和计算机毫无关系的,如央民、中农、中海洋等等),三所211(北邮/西电/北交)和四所双非(杭电/南邮/湘潭/广工)的ICPC/CCPC regional数据

数据来源:cpcfinder.com

“奖项”均指最高奖项。“队伍数”指每年在ICPC regional和CCPC regional中获奖的队伍数量,同一队伍重复获奖的不累计。斜杠区分不同年份的数据,从左到右依次是24-25,23-24,22-23,21-22。队伍数写为3+的,代表获奖队伍数高于3队,不再具体计算。

“同一队伍”的定义:队名完全相同或相同队员个数\geq 2或队伍中出现同一位大哥

学校 regional金牌队伍数
川大 2/3/3/1
山大 3/3/3/3
吉大 3/3/2/1
中南 1/2/2/2
大工 0/0/2/2
华工 0/0/2/2
哈工威 0/0/0/2
重大 0/0/0/0
华师 3/2/1/1
湖大 2/1/1/0
北邮 3/2/2/3
西电 2/1/2/2
北交 1/3/1/0
杭电 3+/3+/3+/3+
南邮 1/1/1/1
湘潭 1/1/1/0
广工 2/1/0/0

(数据是我人工看的,可能出错)

我认为:一个学校每届能稳定批量收到OI职业竞赛生,这个学校每年的ICPC/CCPC regional金牌队伍数应当基本不小于2且能经常达到3(注意"每年"和"每届"的区别)

  1. 限制转专业。

既然选择了竞赛,大部分选手都对本学科有足够的热情和相当的了解,相比于高考生,竞赛生很少转到别的专业——即便转走也是相关专业,比如ChO转临床医学等等。限制转专业可以更好的提纯目标学生。

我认为强基做错的两点:

  1. 竞赛收益明显降低且变得非常不明确。

在自招那个版本,NOIP强省省一可以通过自招基本闭着眼睛进华五人,NOI银闭着眼睛领华五甚至清北降一本线。现在省一在强基里面基本没用。我认为后续如何处理省一会是本科招生改革的有趣话题。

目前省一在强基初审基本没用,各校捞省一的主要操作是转专业+综评(如果有)。

即便是2020年(强基开始)及以后,能支撑职业竞赛的学生都没有成规模地进入大批量的中九/次九计算机强校/个别211以下的学校,所以重点关注的高校是华五人

然而华五人普遍使用特大类招生,入校的分数线极高。单纯转专业对高考分的收益相当有限,除非先综评进去再转专业

在综评里捞人也不是那么简单的,要协调的东西方方面面有很多。

现行政策问题:职业竞赛想通过省一进华五人——文化课分不够(如果没有综评的话);职业竞赛想通过省一进中九/次九计算机强校:犯不着搞竞赛,裸分就行。

更难蚌的是,收益变得非常不明确——自招时期是明确的降分录取;至于强基?鬼知道那校测要高考多少分入围,进了校测人家要不要你还是另一回事,强基还限报一所,中间出一点意外就完蛋了。为了解决这个问题,复交南整出了一个“提前校测”的尝试,我个人感觉还是回到了之前类似自招的考核模式。

  1. 清北华五人以下学校的强基竞赛破格形同虚设

下表是从22年起各个竞赛每年(不是每届)国一/国二数量:(斜杠左侧为国一,右侧为国二),其中“年份”指对应的是那年的国家集训队。

数据来源:https://www.cyscc.org/#/gs/competition

年份 MO ChO PhO BO OI
22 183/229 136/181 144/168 100/140 50/152
23 201/258 161/216 163/229 100/140 50/151
24 226/290 181/246 180/252 150/260 52/150

(注:每年MO在国一之中有60个集训队,其他四门竞赛在国一之中有50个集训队,这260个人直接保送,不需要参加高考和强基)

从20年起,除了OI之外,另外四门竞赛的国一/国二人数都或多或少有膨胀,但到24年也就226+290+181+246+180+252+150+260+52+150=1987个人。考虑到是每年而不是每届(有人重复拿),实际数字至少要除以2(OI是两届学生,另外四门竞赛是三届学生)。有时间的同行可以去具体查一下,我懒得找具体数据了。

一些学校正在尝试新的破格方法。有的学校尝试使用单科破格(如数学高于145),我的想法是:高考单科破格是竞赛破格的下位替代,但竞赛破格不可能不带附加条件的放到OI省一(因为人太多而且弱省省一的水平真的不忍直视。隔壁MO基本不存在这两个问题倒是可以考虑先试试,总共2000多点人各校摊一下感觉不会爆,需要有懂MO的人具体算一下),似乎对OI省一采用可以适当放宽高考入围条件(比如说,普通类入围1:6,有省一的只要高考成绩达到1:8的入围线即可,具体比例是我瞎写的)这条可能会好一些。

现在学生们应该做什么

我把竞赛过程划分为三个阶段

I期:从开始学语言到学会基础语言(递归和简单指针)。这个阶段以培养兴趣为主,不宜操之过急,最迟在七年级结束之前完成,最好在六年级结束完成,要给后面留时间。

II期:I期结束到学会基础数据结构和基础算法(dfs,bfs,简单dp,最短路,最小生成树等等)。这个阶段以学会数据结构和基础算法为主,正常结束之后能拿到相当于CSP-J浙江一等的奖项。主要目的是判断学生是否有基本的算法理解能力,能不能学计算机。最迟在八年级结束之前完成,最好在七年级结束之前完成,因为竞赛初升高必须有比赛成绩,八年级结束之后只有九年级一次机会,最好预留两次。

III期:II期结束之后。这个阶段是职业竞赛冲强省一等及以上的,重点是需要表现出明显的思维能力。一些对竞赛没什么了解的文化课老师错误的认为“学生应该只用课余时间搞竞赛,不应该影响到正常的文化课”,这种观点实在是过于一厢情愿:现在连All in的人都不一定能有一个好结果,不All in就是纯送。因此,选择了职业竞赛冲强省一等及以上的同学,不要想着同时保住竞赛和文化课,先全力推竞赛,拿到一个比较满意的奖项,再回去搞文化课是唯一解

下图是我认为的最终竞赛奖项和学校的关系,方框中间是学校对这个层次的选手的感受(仅供参考

NOI国二/NOIp特别高分 NOIp强省一等(浙江) NOIp弱省一等 100分出头的NOIp一等
清北 非常想要,但强基名额不够 想要,但名额不够 不管了 完全不缺
华五 实务上名额比人多 需要面试看看水平 完全不缺 完全不缺
中九 正式许诺来一个保一个 实务上名额比人多 需要面试看看水平 完全不缺
次九/顶211 基本没见过 实务上名额比人多 实务上名额比人多 要求完全的程序能力

关于CSP-J要求12周岁和GESP

我觉得最低年龄完全可以放到9-10周岁(小学高段)。一是这个年龄段的学生已经有了基本的数学和计算机应用能力与规则意识,不至于出现“质数是什么”、“怎么解压缩”之类的逆天问题,完全有正常参赛的能力(不会比赛到一半顺手从旁边的图书角里面拿一本漫画开始看——来自华中科技大学的吐槽);二是小升初现实需要可靠的筛选标准,目前通行的可靠标准也就MO和OI,PhO、ChO和BO因为客观知识体系限制基本不可能放到小学。

如果这个政策长期持续下去,我预计将来会有新的比赛来替代CSP-J完成对9/10-12周岁的学生(主要是小学高段)的筛选,甚至替代整个CSP-J。这个新的比赛最终至少会由省一级及以上单位主办;放到地市一级估计会群魔乱舞(参考2013-2015年小学奥数泄题遍地);至于县区一级就拉倒吧,题都不一定出的明白。

至于那些认为不办比赛就可以停止筛选的,我只能说指望用几张A4纸就中止比赛是一种十分幼稚的行为。回顾一下历史,一开始有华杯/走美之类的小学奥数,后来有NOIP普及组,后来有CSP-S/J。有鉴于此,我充分相信:即使CSP-S/J没了也会有新的比赛——姑且叫SCP好了(手动狗头)。从小学奥数到现在的历史已经证明:比赛是筛选的手段,筛选是比赛的目的。只要有筛选的需求,那么比赛作为筛选的工具就会一直存在,区别只是比赛的形式。

另外,我不觉得GESP能成为下一个NOIp普及组和CSP-J,因为学校和学生都更希望比赛是一锤子买卖(像中/高考那样)——而非GESP这种升级打怪的模式。这种模式把周期拉的太长,结果不直观,招生的时候烦得要死。

顺路说一句,所谓的“竞赛去功利化”和竞赛和升学脱钩本质上和“用爱发电”没有逻辑上的区别——没利益的事谁干啊。

一些碎碎念

  1. 选手是最靠谱的,老师其次。老师和选手想不清楚的事,不要纠结,一定要选一个方案,不然就会变成由不懂具体业务的行政人员来决定。
  2. “专家”建议先看人,这“专家”是谁,到底懂不懂他建议的领域。现在什么玩意都敢说自己是“专家”。
  3. 用脑子想问题人在低层次的单位是一种非常稀缺的资源,但高层次的单位也不是人人都有这项能力。锑到处都有,不要指望通过进入一个足够好/等级足够高的单位来避免遇到锑。
  4. 我至今没想明白,脱产学中考/高考和脱产学竞赛对学生的成长有啥区别。
  5. 绝大多数学校组织/支持某种活动的唯一理由和原因:更上面的学校愿意给政策。
  6. 某些神人天天只会搁那辩(口)经(嗨),只考虑“应该怎么样”而不考虑“能不能执行”,只会说绝对正确的废话。离这种锑远一点,出了事绝对是甩锅最快的一批(反正口号非常正确,非常伟/光/正,不是口号的问题)。如果你是领导或同级,对付这种锑也很简单——谁决策、谁执行、谁买单,让他祸害自己就行。
  7. 实际上没有出现因为强基的分比高考普通类要低从而歧视强基的现象,主要是由于我知道的所有学校的强基和普通类都是一起上课的,因此寄点是一样的,寄点筛选比用高考分筛选好用多了。