三三文档首页

来自三三百科
->Importer2026年5月20日 (三) 16:22的版本 (批量导入三三文档)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

三三文档

欢迎来到三三文档,这里收录了 C++ 编程与算法竞赛(OI)相关的学习资料、代码模板和题解。

入门学习路线

按照以下顺序逐步学习,从零基础到能够参加算法竞赛:

第一阶段:基础语法

1. 基础框架 — 万能头文件、main 函数、using namespace std 2. 输出语句cout、换行、转义符、保留小数 3. 输入语句cingetline 4. 变量与基础类型intlong longdoublecharstringbool 5. 赋值与数学运算 — 赋值、运算符、语法糖 6. 字符 — ASCII、字符数字转换、大小写转换 7. 整数编码 — 二进制、原码反码补码、数据范围 8. 编译与运行 — 编译命令、栈空间、C++标准 9. 常见小技巧 — 常用头文件、宏定义、调试技巧

第二阶段:选择与循环

1. 选择语句if/else、比较运算符、逻辑运算符、布尔 2. 常见选择逻辑 — 闰年判断、三角形判断、上下取整 3. 循环语句whileforbreakcontinue 4. 常见循环逻辑 — 最值、求和、计数、质数判断、数位分解 5. 循环嵌套与综合 — 循环嵌套、综合练习

第三阶段:进阶基础

1. 数组 — 一维数组、多维数组 2. 字符串stringsubstrfind、遍历 3. 函数 — 定义、参数、返回值、传引用 4. 结构体 — 定义结构体、成员访问、结构体数组 5. 递归 — 递归思想、基础递归题目 6. 位运算与三目运算符 — 位运算、三目运算符 7. 文件读写与高级IOfreopen、IO 加速、读入到文件末尾

第四阶段:数据结构(STL)

1. vector — 动态数组 2. queue 与 deque — 队列与双端队列 3. stack — 栈 4. map / unordered_map — 映射 5. set / unordered_set — 集合 6. priority_queue — 优先队列 7. STL 实用例子 — 综合例题

---

参考资料

算法模板

- 排序算法 - 线段树 - 最近公共祖先 LCA - 高精度 - 矩阵快速幂 - 高斯消元 - 线性基 - 并查集

数学相关

- 质数判断与筛法 - 最大公因数与最小公倍数 - 欧拉函数 - 乘法逆元 - 字符串哈希 - 计算几何 - 组合数与反演 - 快速幂与快速乘

33OJ 文档

- 评测机 - 题面规范 - 三三月赛

---

课程大纲

本套文档遵循 33dai 基础语法大纲 的课程体系,分为 核心序列(Core)扩展维度(Extend) 两部分:

课程编号 课程标题 课程内容
C01-1 高级计算器 输入输出语句、int 变量
C01-2 如果那么 不带 elseif 语句
C01-3 在范围内吗 elseif 语句
C01-4 一直做下去 while 语句
C01-5 想做几次做几次 for 语句
C01-6 循环套循环 循环嵌套
C01-7 先存起来 一维数组
C01-8 数组妙用 权值数组、无返回值无参数函数
C01-9 功能打包 有参数有返回值函数
E01-1 int 存不下了 long long 类型、数据范围、整数编码
E01-2 小数怎么办 double 类型、类型转换
E01-3 文字与符号 char 类型、字符数字转换
E01-4 花式输入输出 读入到文件末尾、保留 [math]\displaystyle{ x }[/math] 位小数
E01-5 更多运算符 位运算、三目运算符
E01-6 高级控制 breakcontinueexit(0)
E01-7 一串字符 字符串
E01-8 高维结构 多维数组与结构体
E01-9 自己调用自己 简单递归、参数传引用

教学约定

详见 教学约定