从 GESP 考级到 IOI 国际赛——给学生一张主干路径,给家长一张决策地图。
典型路径:小学高年级入门 → 初中冲刺 CSP-S/NOIP → 高中省选/国家集训队。下面是各节点的常见年龄段(可前后浮动 1-2 年)。
每张卡片描述:这是什么考试 / 何时考 / 需要掌握什么 / 通过/获奖之后的下一步。
勾选你已掌握的知识点(打勾=能独立写出代码并理解原理),系统自动评估你当前所处阶段并给出下一步建议。进度保存在本地浏览器,刷新不丢失。
开始勾选你已掌握的知识点,这里会给出实时建议。
每类资源只挑最重要的 3-5 个,贪多反而不练。
如果你完全没碰过 GitHub,从下面第 0 步开始按顺序看。每一步都附上界面位置和英文按钮中文对照。
GitHub 是一个"代码版的网盘 + 社交平台"。每个人有自己的账号,账号下面可以建很多 仓库 (Repository),每个仓库就是一个文件夹,可以装代码、笔记、模板。
对 OI 选手来说,GitHub 的四个用途:
GitHub 没有官方中文版,但有几种可行方案:
方案 A · 浏览器自动翻译(零门槛,推荐新手)
方案 B · 安装"GitHub 汉化插件"(更优雅)
方案 C · 用国内"代理站点"看代码
github.com/你的用户名,起一个简短好记的英文 ID登录后,右上角点 "+" 号 → 选 New repository(新建仓库)。
my-oi-solutions建完之后,你就有了一个属于自己的仓库:github.com/你的用户名/my-oi-solutions
怎么往里加文件(最简单的方法,不用装 Git):
.cpp 文件拖进去luogu/P1001.cpp — 洛谷题目codeforces/Round900/A.cpp — CF 比赛templates/dijkstra.cpp — 自己整理的模板notes/segment-tree.md — 知识点笔记
这是 OI 选手用 GitHub 最大的好处。
找模板库 — 关注这些账号
怎么用(以 tourist 为例):
.cpp 文件直接在网页上读用搜索找特定算法的实现
segment tree lazy language:C++访问任何人的主页(比如 github.com/jiangly),点头像旁边的 Follow(关注)。
之后你的首页 github.com 会显示他们最近 star 了什么仓库、push 了什么代码,相当于"算法圈微博"。
推荐先关注:
jiangly — 中国队江立the-tourist — Gennady Korotkevich,世界第一ksun48、ecnerwala、Benq — IOI/ICPC 顶尖选手EndlessCheng — 灵茶山艾府等你熟练后,每次写完题就不想再"点 Upload files"那么麻烦了,可以装 Git 命令行工具,一键同步。
四个最常用命令(在题目所在文件夹打开终端):
# 第一次:把仓库下载到本地 git clone https://github.com/你的用户名/my-oi-solutions.git # 之后:写完代码,三连 git add . # 把改动登记 git commit -m "添加 P1234 题解" # 写一句话描述 git push # 推送到 GitHub
Windows 装 Git:git-scm.com/download/win;Mac 自带,或 brew install git。
更好用的图形客户端:GitHub Desktop(中文界面,所见即所得,推荐新手用这个代替命令行)。
记住这张表,GitHub 上 80% 的按钮你都看得懂。
| 英文 | 中文 | 什么意思 |
|---|---|---|
| Repository / Repo | 仓库 | 一个项目,相当于一个文件夹 |
| Commit | 提交 | 保存一次修改的快照,带描述 |
| Push | 推送 | 把本地修改上传到 GitHub |
| Pull | 拉取 | 把 GitHub 上的最新版下载到本地 |
| Clone | 克隆 | 把整个仓库下载到本地 |
| Fork | 分叉 | 把别人的仓库复制一份到你的账号 |
| Star | 星标 | 收藏,类似点赞 |
| Watch | 关注 | 订阅仓库更新通知 |
| Follow | 关注(人) | 关注某个用户 |
| Issue | 问题 | 报 bug、提建议、讨论的地方 |
| Pull Request (PR) | 合并请求 | "我改好了,请把我的修改合并进去" |
| Branch | 分支 | 同一个仓库的不同版本线 |
| Merge | 合并 | 把两个分支的修改合起来 |
| README | 说明文档 | 仓库首页自动显示的介绍 |
| Gist | 代码片段 | 分享单个小代码片段,比建仓库轻量 |
| Profile | 个人主页 | 你的 GitHub 首页 |
| Public / Private | 公开 / 私有 | 仓库谁能看 |
| Sign in / Sign up | 登录 / 注册 | — |
Q: 公开仓库,我的代码会被抄袭吗?
A: OI 选手的题解大家都公开,GitHub 自动保留作者和时间戳,反而是证据。除非是正在打的赛事代码,否则不用担心。
Q: 一次 commit 应该多大?
A: 新手不用纠结,"做完一道题就 commit 一次"是好习惯。
Q: 不小心传上去了不想给人看的东西怎么办?
A: 仓库设置 → Danger Zone(危险区域)→ Make private(设为私有),或者直接 Delete(删除整个仓库)重建。
Q: GitHub Copilot 能用吗?
A: 学生可申请免费版(GitHub Education),但 OI 训练强烈建议关掉 — AI 自动补全会毁掉你的算法思考过程。日常笔记/作文可以用。
Q: 我能在 GitHub 上写博客吗?
A: 能。叫 GitHub Pages,免费托管静态网页。很多 OI 选手的题解博客就是这么搭的。教程见 pages.github.com。
不是每个孩子都要走到 IOI,关键是判断"何时止盈"和"如何衔接升学"。
启蒙到 CSP-J 一等约 2-3 年;CSP-S 一等约再加 1-2 年;省队需要全脱产级投入。每升一级筛掉 ~70-90% 的人。
多数重点中学认可 CSP-J 一等 / GESP 7 级以上作为信息学特长生敲门砖。具体看目标校招生简章。
CSP-S 一等、NOIP 一等是科技特长 / 强基计划重要凭证;省一以上更显著。
NOI 银牌及以上可冲击清北强基/保送;集训队成员保送清北。普通高校以"奖项+高考"组合通道为主。
若孩子在 CSP-J 阶段持续无一等,可考虑 GESP 稳证书路线,或转向数学 / 物理 / 信息 (Kaggle/AI) 等方向。
提供稳定的练习时间(每周 8-15 小时)、不在低谷期施压、关注睡眠胜过关注做题量。