入门指南
学习路线
首先通过B站等学习C语言基本语法,然后通过练习PTA语法题熟练掌握C语言,如果有疑惑,可以在迎新群中提出疑问,有学长学姐进行解答。在C语言熟悉的情况下,可以学习C++(相当于C.plus,),逐渐学习C++的STL部分内容,我们会安排学习任务,并在周末集训时,检验大家的学习成果。在此基础上,可以进行算法的学习, 可以看算法基础课学习视频,我们也会找时间讲解算法。经过一段时间的学习,逐渐能够参与正式的比赛如蓝桥杯、天梯赛并取得不错的成绩。后面开始学习算法提高课,打线上竞赛和其他学校的邀请赛,为 ICPC、CCPC 做准备。
阶段性目标与验收标准
阶段 | 时间节点 | 核心目标 | 验收标准 |
---|---|---|---|
打基础 | 大一 | 掌握C语言语法和PTA基础题,进行C++的转换,开始学习算法 | 完成PTA团体程序设计天梯赛-练习集L1部分,进行周赛督促大家学习 |
学算法 | 大二 | 算法基础,进阶,提高,数据结构,冲击奖项 | Codeforces 打codeforces,蓝桥杯省一/天梯赛省赛二等奖,XCPC铜/银/金牌 |
进阶,冲击 | 大三 | 查漏补缺,刷题,学算法 | 冲击更高奖项 |
规划 | 大四 | 攻克高难度算法/考研 | 按自己需求进行规划 |
C语言
语法基础过关,掌握以下知识:变量定义、计算和输入输出;顺序结构;选择结构;循环结构;函数;数组;字符串;结构体;指针。
刷PTA基础语法题
注册PTA账号并登录,官方提供了许多题单,可以按需练习。
C++ STL
Acwing算法基础课
第一讲 基础算法 | 包括排序、二分、高精度、前缀和与差分、双指针算法、位运算、离散化、区间合并等内容。 |
第二讲 数据结构 | 包括单链表,双链表,栈,队列,单调栈,单调队列,KMP,Trie,并查集,堆,哈希表等内容。 |
第三讲 搜索与图论 | 包括DFS,BFS,树与图的深度优先遍历,树与图的广度优先遍历,拓扑排序,Dijkstra,bellman-ford,spfa,Floyd,Prim,Kruskal,染色法判定二分图,匈牙利算法等内容。 |
第四讲 数学知识 | 包括质数,约数,欧拉函数,快速幂,扩展欧几里得算法,中国剩余定理,高斯消元,求组合数,容斥原理,博弈论等内容。 |
第五讲 动态规划 | 包括背包问题,线性DP,区间DP,计数类DP,数位统计DP,状态压缩DP,树形DP,记忆化搜索等内容。 |
第六讲 贪心 | 包括区间问题,Huffman树,排序不等式,绝对值不等式,推公式等内容。 |
Codeforces 使用方法
安装油猴汉化插件
在线竞赛:在这个版块可以参加即时的竞赛,一般在晚上22:35开始,持续2小时。难度从高到低分为div1 - div4

题库:在这个版块可以根据题目难度和题目算法类型,筛选要训练的题目。每个题目都有一个分数,分数越高的题目越难。

Rating:算法竞赛中的“排位赛”,每场比赛根据表现会加或减自己的分数。每个人都可以看到在全世界的排名,在这种设定下,选手都想为了上分提高排名而学习,产生良性竞争。
练习平台和学习网站
开发环境
Dev-C++ | 小熊猫C++ | ![]() Code::Blocks | Visual Studio | Visual Studio Code | ![]() Sublime | CLion |
入门推荐使用 Dev-C++ 或 Visual Studio,如果觉得 Dev-C++ 不好用又不想下载体积大的 Visual Studio ,可以选择小熊猫C++ 。之后推荐使用 VScode。(VScode相关配置,可以在B站中查找)参加天梯赛可以选择 Code::Blocks。