蓝桥杯C/C++大学B组备赛经验
- 前言
- 知识点
- 网站
- 书籍
- 学习路线
- 其他算法竞赛
前言
本人是一名退役的HEOI、蓝桥杯、CCPC选手。本文是针对蓝桥杯C/C++大学B组的备赛经验。
以下内容完全是个人经验和观点,请批判性采纳。本人水平有限,如有错误请指正。
知识点
根据蓝桥杯组委会给出的竞赛大纲文件,试题考察范围:
- C/C++程序设计基础:包含使用C/C++编写程序的能力。该部分不考查选手对某一语法的理解程度,选手可以使用自己喜欢的语句编写程序。选手可在C语言程序中使用标准C的库函数,在C++语言程序中使用标准C++的库函数(包括C库、STL等)。
- 计算机算法:枚举、排序、搜索、计数、贪心、动态规划、图论、数论、字符串算法等。
- 数据结构:数组、对象/结构、字符串、队列、栈、树、图、堆、平衡树/线段树等。
以上是以第十三届为例的,要获取最新的考察范围,请阅读最新的竞赛大纲文件。
网站
- AcWing
推荐理由:AcWing是一个算法社区,有优质的课程、大量题目、题解、问答、分享等等,比如搜索“常用代码模板”、“时间复杂度”等关键词,可以看到许多实用的帖子。另外,AcWing每周有周赛,题目难度约等于蓝桥杯省赛难度,适合省赛前进行模拟比赛训练。
课程推荐:《算法基础课》、《蓝桥杯辅导课》
推荐理由:系统讲解基础算法与数据结构的原理,并给出相应代码模板,有相应的打卡题目;价格亲民。适合想系统地、高效地学习算法的同学。 - 洛谷
洛谷是一个在线评测平台,题库里有大量题目,还有大量优质题解。洛谷在题目的分类方面做的很好,将题目根据算法和来源等进行了分类,方便我们在学习某个算法时进行有针对的练习。 - LeetCode
Leetcode提供大量的算法题目练习,平台更加侧重求职。优点是每周都有周赛,定期参加模拟比赛可以提高竞赛水平。 - Codeforces
一个知名的算法竞赛平台,有很多高质量的线上比赛和训练题。 - POJ
POJ 是北京大学程序在线评测系统,是个提供编程题目的网站,有很多经典题目。
书籍
《算法竞赛入门经典》、《挑战程序设计竞赛》
学习路线
从零入门到参加算法竞赛大致分成以下几个阶段:
- 学习语法
系统学习常用的 C++语法知识与实用技巧。 - 学习算法
系统学习基础算法与数据结构的原理,在理解原理的基础上学习代码模板,达到能默写的程度。 - 刷题
(1)在学习算法的同时,在学会代码模板的基础上,找算法对应的题目进行应用。
(2)刷蓝桥杯往年真题,熟悉蓝桥杯的常考算法和出题风格。 - 参加模拟赛
在系统学习算法后,定期参加模拟比赛,比如AcWing周赛、Leetcode周赛、Codeforces等。
其他算法竞赛
除了蓝桥杯外,大学生可以参加的算法竞赛还有:
- ACM国际大学生程序设计竞赛(ACM-ICPC)
- 中国大学生程序设计竞赛(CCPC)
- 中国高校计算机大赛之团体程序设计天梯赛
以上所有内容为个人经验,仅代表个人观点。