Go 算法竞赛模板库
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 提供的指南,在你的 AI 助手中安装 @kunlungrowth/competitive-programming-go 技能。
技能介绍
竞赛中的 Go 痛点
在 Codeforces 或 AtCoder 等算法竞赛中,使用 Go 语言编写解题代码常常面临一个尴尬:思路想清楚了,却因为 fmt.Scan 导致 IO 超时,或者在实现并查集、线段树时反复调试。这种“赛前没备好轮子,赛时现场造火箭”的窘境,往往会打断比赛节奏。本技能旨在解决这一问题,通过整理经过验证的 Go 竞赛模板,让选手将精力集中在算法思路而非重复的语法实现上。
模板库与赛时工作流
该技能提供了一套覆盖高频考点的标准模板,包括基于 bufio 的 IO 加速、并查集/堆/线段树等基础结构、Dijkstra 与拓扑排序等图论算法,以及 gcd/素数筛等数论工具和 DP 通用骨架。
在赛时,它遵循一套严谨的工作流:
- 选型:读题后迅速判断题型,匹配对应模板。
- 填空:以模板搭建代码骨架,仅填充核心逻辑。
- 自测:使用最小/最大边界样例进行验证。
- 防漏:构思 hack 用例,检查
int64溢出、建图方向及空集边界。
适用边界与实战建议
尽管模板能大幅降低编码出错率,本技能仅作为竞赛训练与辅助参考。竞赛结果最终取决于对题目的深入理解和代码的正确性,AI 输出的模板与建议绝不能替代日常的大量刷题与实战模拟。此外,使用前务必确保所有模板已在本地跑通,避免递归爆栈等底层环境差异带来的意外。
使用场景
- 用Go打Codeforces时,遇到多组输入的大数据量,需要用bufio替换fmt.Scan以避免超时
- 赛前整理Go竞赛套路,希望系统汇总并查集、线段树等基础数据结构模板,方便比赛中快速调用
- 打AtCoder遇到图论题时,需要现写Dijkstra或拓扑排序,想直接复用已测试过的Go模板
- 比赛时遇到递归深度过大导致爆栈,需要参考指引将递归改为迭代或调整栈大小
适合人员
- 用Go语言参加Codeforces/AtCoder的算法竞赛选手,想在赛前建立可靠模板库
- 正在备战算法竞赛的Go语言学习者,希望系统整理并查集、线段树等高频考点模板
- 经常在竞赛中因IO或模板问题浪费时间的选手,需要标准化的解题工作流
- 带队打算法竞赛的教练,希望为Go选手整理一套可复用的竞赛模板参考