大赛简介

中国大学生程序设计竞赛(China Collegiate Programming Contest,简称CCPC)是工业和信息化部教育与考试中心主办的 “强国杯”技术技能大赛项目,自从2015年首届CCPC竞赛以来,赛事规模发展迅猛,竞赛影响力持续提升,为我国IT业的发展培养和选拔了大批人才。CCPC得到了诸多企业的支持。2021年一汽红旗为总赞助商,腾讯、快手、图森未来、华为云、轻舟智航为金牌赞助商。

比赛时间

  1. 每年8月举办1场网络赛;
  2. 每年9月-11月举办的3~4场分站赛;
  3. 每年11月~12月举办的年度总决赛;
  4. 每年举行的其他组委会认可的比赛,包括但不限于女生赛、省赛、地区邀请赛、全国邀请赛等。

比赛赛制

  1. ACM赛制

队伍组成

组队参赛,每个参赛队由3名队员和1名教练组成,参赛队员必须是所属高校在籍的本科生、专科生,教练必须是所属高校在职教师,教练有责任保证参赛成员身份的真实性。
每个参赛队员每年参加的分站赛不超过两场。

另外,比赛可以携带纸质资料。

参赛方式

  1. 比赛时长:5个小时。当比赛进行一定时间后,若出现不可预见的事件,组委会有权调整比赛时间长度,但必须及时通知所有参赛选手。
  2. 比赛模式:上机编程,实时评测,实时排名。
  3. 比赛题目:10~13题。年度总决赛、分站赛题目为英文描述(个别词句可附中文注释),其他比赛可采用中文描述。
  4. 比赛机器:每支参赛队共用1台机器。
  5. 比赛评测:采用机器实时评测,每通过一个题目升一个对应颜色的气球。
  6. 比赛封榜:比赛最后一小时不显示排名变化情况,但仍然升气球,颁奖后公布最终结果。
  7. 竞赛语言:至少支持C、C++、Java三种语言。
  8. 提交反馈:包括 Compilation Error (编译错误)、Runtime Error(运行错误)、Wrong Answer(答案错误)、Time Limit Exceeded(超时)、Accepted(正确)等。

参赛经历

我参加的是河南省的省赛,拿到一个铜牌。在参赛之前我也没有参加过学校的训练。在比赛之前自己报了ACwing的算法基础课,但是课程也没有看多少,队友的水平也不是太好。自我感觉也就是稀里糊涂的得个奖。

比赛后的假期中,自己在家学习算法,刷了Acwing的算法基础课,打了一些牛客的网络赛,这时候我实际上才对算法有了一个较为基础的系统认识。

至于比赛心得我没有,因为我当时也不知道什么情况。
但是从对算法的迷茫到清晰的变化过程我倒是有一些经验分享。

经验心得

在我这个一般般水平的人看来:
算法有许多知识点,系统地学习算法。
比如找一些算法知识点的学习路线,报一些算法课。都是可以的。这样你就快速的入门了,对整体有一个认识,就像打怪闯关一样,自己就知道精力,时间该向哪一个方向使了。然后在攻克一个个知识点的过程中,辅助以刷题,就会对算法的认识变得不断清晰。知识点多了,经验丰富了,看到大概题目也就知道了考察什么算法了,如果解决了,算法能力就得到了提升。

在学习过程中,一定要理解算法的实现原理,这样你才可以记住算法,在理解算法原理的基础上找一个模板,记住实现流程就行了,理解原理后记住模板十分轻松。把自己的模板保存下来。

至于看书我不太清楚,虽然买了一些书,但是没有怎么看过,不过有时候对于一些细节不是特别清楚会翻一翻算法导论。

资料分享

推荐一些学习资料,无序列表,不分先后

以上只是个人经验分享给大家,仅供参考吧。

CCPC比赛与算法学习的个人分享的更多相关文章

  1. 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)

    这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...

  2. Kosaraju算法学习

    Kosaraju 算法学习 序 这星期捣鼓了一个新的算法--Kosaraju算法 今天分享给大家 简介 Kosaraju算法,其实与tarjan算法差不多.但是码量较小,容易记忆.其时间复杂度与tar ...

  3. C++、Java、Python、Linux、Go、前端、算法,慕课资料分享

    C++.Java.Python.Linux.Go.前端.算法,慕课资料分享 微信公众号:大道同行JAVA 如有问题或建议,请后台留言,我会尽力解决你的问题. 前言 又见面了.废话不多说,最近多了一些在 ...

  4. DSP算法学习-过采样技术

    DSP算法学习-过采样技术 彭会锋 2015-04-27 23:23:47 参考论文: 1 http://wr.lib.tsinghua.edu.cn/sites/default/files/1207 ...

  5. 算法学习之C语言基础

    算法学习,先熟悉一下C语言哈!!! #include <conio.h> #include<stdio.h> int main(){ printf(+); getch(); ; ...

  6. Python之路,Day21 - 常用算法学习

    Python之路,Day21 - 常用算法学习   本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的 ...

  7. C / C++算法学习笔记(8)-SHELL排序

    原始地址:C / C++算法学习笔记(8)-SHELL排序 基本思想 先取一个小于n的整数d1作为第一个增量(gap),把文件的全部记录分成d1个组.所有距离为dl的倍数的记录放在同一个组中.先在各组 ...

  8. PMBOK 学习与实践分享视频

    本系列为自己在学习PMBOK时进行的总结与分享,每一节主要包括两部分: 对PMBOK本身的一个结构笔记和讲解. 对自己项目管理工作的一个总结和思考. PMBOK 学习与实践分享视频内容清单 人力资源管 ...

  9. 算法学习之BFS、DFS入门

    算法学习之BFS.DFS入门 0x1 问题描述 迷宫的最短路径 给定一个大小为N*M的迷宫.迷宫由通道和墙壁组成,每一步可以向相邻的上下左右四格的通道移动.请求出从起点到终点所需的最小步数.如果不能到 ...

随机推荐

  1. Redis - 读写模式 - 缓存一致性

    Cache Aside Pattern(旁路缓存模式) 读:从cache中读取数据,若读取到则直接返回:cache中不存在则去database中读取,然后更新到cache. 写:先更新database ...

  2. pycharm编辑器下载与安装

    pycharm编辑器下载与安装 首先是下载地址:https://www.jetbrains.com/pycharm/download/#section=windows   首先根据自己的电脑选择系统, ...

  3. 验证cuda和cudnn是否安装成功(转载)

    本人cuda安装目录: 当然cuda安装目录也可默认:此处为方便安装不同cuda版本,所以单独建了文件夹. 转载自:https://zhuanlan.zhihu.com/p/139668028 安装完 ...

  4. KALI2020忘记用户名和密码

    时隔半年,打开kali发现忘记了自己精心研制的用户名密码......... 第一步 在开机的时候就按e键进入如下界面 第二步 用键盘上的上下箭头↑↓进行屏幕滚动,滑到最后一行发现修改目标 倒数第四行: ...

  5. 强化学习-Windows安装gym、atari和box2d环境

    安装gym pip3 install gym pip3 install gym[accept-rom-license] 安装atari环境[可选] 下载安装VS build tools 如果出现 OS ...

  6. 针对elementUI 中InfiniteScroll按需引入的一点注意事项

    大家为了节省空间,常常进行按需引入来节省空间,这里我给大家来介绍一下element中按需引入无限滚动指令注意的事项. 针对前面element 按需引入的一些配置这里就不再详细介绍了. 那么这里讲的是在 ...

  7. 十分钟快速实战Three.js

    前言 本文不会对Three.js几何体.材质.相机.模型.光源等概念详细讲解,会首先分成几个模块给大家快速演示一盒小案例.大家可以根据这几个模块快速了解Three.js的无限魅力.学习 我们会使用Th ...

  8. openGauss内核:SQL解析过程分析

    摘要:在传统数据库中SQL引擎一般指对用户输入的SQL语句进行解析.优化的软件模块.SQL的解析过程主要分为:词法.语法和语义分析. 本文分享自华为云社区< openGauss内核分析(三):S ...

  9. python小题目练习(六)

    需求:编写一个猜数字的小游戏,随机生成1到10(包含1和10)之间的数字作为基准数,玩家每次通过键盘输入一个数字,如果输入的数字跟基准数相同,则闯关成功,否则重新输入,如果玩家输入的是-1,则表示退出 ...

  10. Java获取显示器屏幕大小

    public static void main(String[] args) { Dimension screensize = Toolkit.getDefaultToolkit().getScree ...