ACM国际大学生程序设计竞赛(ACM/ICPC或ICPC)是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。经过近30多年的发展,ACM国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。赛事目前由IBM公司赞助。
ICPC和CCPC的区别在于比赛的范畴不一样,ICPC是面向国际,CCPC是面向国内。但是二者都是含金量极高的计算机程序设计竞技大赛
acm的赛程流程9-10月:一到两场icpc网络赛+一场ccpc网络赛11-明年2月:各个赛站的区域赛(相当于国赛)以下是2022赛季(46届)的赛事安排
排名按照acm赛制,即解题数量多的、解题数量相同时罚时少在前,交错一发罚时20min(编译错误可能没有罚时)。
当然了,校排指的是学校排名最高的队伍在所有学校的排名,是学校排名,校排就大胆地把希望交给你们学校一队了。
大部分高校在报名赛站的时候会采用各个队伍的网络赛排名校内分配名额,所以在打网络赛的时候也要拼尽全力,网络赛排名会影响到后面的报名赛站(名额按校内排名分配,排名高的优先)。
接下来的比赛就是各个省内的cpc省赛,不同省份的省赛情况不同,山东省的比赛情况一般在明年4月。
省赛没有区域赛对标的网络赛,需要校内选拔赛去分配名额,我们学校选拔的名额大概是15个队伍,学弟们要加油往前争夺名额哦!
打acm最重要的是两个东西-算法+思维,缺少一个都不可能走远。
算法的原始积累(如果你想免费自学的话,可能这里没有你想要的东西(因为我不是自学型选手))
讲讲个人,在我认识到算法之前,我的思维仅停留在暴力枚举,找规律上,当我刷完算法基础课的时候,我的思维就已经开始达到该如何去套用这些板子上,当时还是仅仅了解这些性质,但是刷算法基础课之前和之后你会有一种成就感,这是你收获到的第一个喜悦,其次你的信心,算法功底,思维方法会有大大的不同。
当你刷完算法提高课的时候,你所必须掌握的算法已经全部掌握,算法进阶课不过就是锦上添花,你刷完算法提高课,加上比较好的思维能力,已经具备拿牌的实力。算法进阶课涉及的大多数银牌、金牌算法,如果你有银牌、金牌目标的需求可以去爆刷一下算法进阶课。算法进阶课也并非全部刷完,数论和几何知识中的大多数算法属于暂时还开不到的题目(对于我来说是),算法进阶课我不推荐全部刷完(也不推荐购买,不推荐刷),当你刷完算法提高课的时候就准备思维上的训练。
当你刷完算法提高课的时候,你已经具备了所有的所需算法。
先说一下codeforces的几场比赛
div11900+以上的选手才有资格报名参加,题目难度很高,div1A=div2C以此类推。div2没有rating要求,2100不计rating,是一个比较中档、友好的一场比赛,大部分同学都能出题。div3没有rating要求,1600不计rating,相较于div2更加简单,题目更加典型,思维含量较低div4没有rating要求,是一个面向零基础(刚入门)都可以去做的一场比赛。
这些比赛是codeforce常见的比赛类型,其他比赛类型还有div1+div2,edu场。
codeforce的特点。
几句闲话:
牛客网站
小白月赛和练习赛是我推荐具有一定基础去爆刷的比赛,不一定只要打比赛,我们可以补以往的小白月赛和练习赛。对于我来说,我几乎把所有的练习赛全部补了一遍,学到了很多东西和套路(没补f,大多数e),爆刷cf也可以达到同样的效果。
后面继续更新
学习的流程可以有两种:
我其实更推荐后者刷题,更适合acm的考查方式,也更锻炼思维,但是对个人的要求很高,大部分都是采取第一个方式去刷题。