Skip to content

iliyian/CompetitiveProgramming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

367 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Competitive Programming

个人竞赛编程知识库 | Personal Competitive Programming Knowledge Base

Problems Templates Language


目录 | Table of Contents


仓库概览 | Overview

统计项 数量
C++ 源文件 5000+
Python 文件 80+
算法模板类别 115+
题解总数(各平台) 1400+
覆盖在线评测平台 18+

算法模板 | Templates

模板位于 Templates/ 目录,涵盖竞赛常用算法与数据结构。

数据结构 | Data Structures

模板 说明
seg 线段树(区间加、区间最值、动态开点、线段树上二分等)
fenwick 树状数组 / 二叉索引树
主席树 可持久化线段树
dsu 并查集
带距离权并查集带路径压缩 带权并查集
fhqtreap.cpp FHQ Treap(无旋 Treap)
SB树 Stern–Brocot 树
pb_ds_tree STL pb_ds 平衡树扩展
pb_ds可并堆 可并堆(左偏树)
链表 双向链表
笛卡尔树 Cartesian Tree
ST表 Sparse Table(RMQ)
分块 根号分块

图论 | Graph Theory

模板 说明
dijkstra Dijkstra 最短路
SPFA SPFA 最短路
SCC 强连通分量(Tarjan)
bcc_bridge 点双连通分量 & 桥
cut_point 割点
max-flow 最大流(Dinic)
min-cost 最小费用流
min-cut 最小割
hld 重链剖分
LCA 最近公共祖先
欧拉序_O1_LCA 欧拉序 O(1) LCA
欧拉路 欧拉路 / 欧拉回路
tree_diameter 树的直径
点分治 点分治
树上启发式合并 DSU on Tree
基环树 基环树
n点n边的基环树森林找环 基环树森林找环
圆方树,点双 圆方树
bigraph-weight-match 二分图带权匹配(KM 算法)
斯坦纳树 Steiner Tree
竞赛图找三元环 竞赛图三元环计数
2-sat 2-SAT
最大权闭合子图 最大权闭合子图
dfs树性质 DFS 树性质
DFS DFS 相关
Kurskal Kruskal 最小生成树
secondary_mst 次小生成树
扫描线 扫描线
线段树优化建图 线段树优化建图
线段树或时间线分治 线段树分治

动态规划 | Dynamic Programming

模板 说明
DP 经典 DP 合集(凸包优化 CHT、斜率优化等)
knapsack 背包 DP(0-1、完全、多重)
数论分块 整除分块
CDQ CDQ 分治(三维偏序等)
高维偏序 高维偏序
二维数点 二维数点
离线 离线算法
折半搜索 Meet in the Middle
IDAstar IDA*
Astar A*
反悔贪心 反悔贪心
矩阵快速幂 矩阵快速幂
lagrange_interpolation.cpp 拉格朗日插值

数学 | Mathematics

模板 说明
FFT 快速傅里叶变换
ntt 数论变换 NTT
Pollard_Rho_Miller_Rabin 大数分解 & 素性测试
prime_sieve 素数筛(线性筛)
分解质因数 质因数分解
euler_totient 欧拉函数
ex_euler 扩展欧拉定理
C_n_m_mod_p 组合数取模(Lucas 定理)
CRT 中国剩余定理
inverse_exgcd 逆元 & 扩展 GCD
gcd_lcm GCD & LCM
fast_gcd.cpp 基于 Stein 优化的超快速 GCD
基于stein优化的超快速gcd 同上
rational_mod 有理数取模
gauss 高斯消元
linear_equation 线性方程组
determinant 行列式
莫比乌斯反演 Möbius 反演
catalan 卡特兰数
stirling 斯特林数
Big 大数运算

字符串 | Strings

模板 说明
KMP KMP 字符串匹配
Z函数 Z 函数
AC自动机 Aho-Corasick 自动机
01trie 01-Trie(异或最大最小)
哈希 字符串哈希

几何 | Geometry

模板 说明
convex_hull 凸包
half-plane 半平面交
曼哈顿和切比雪夫 曼哈顿距离 ↔ 切比雪夫距离转换
max_sub_rect 最大子矩形

其他 | Miscellaneous

模板 说明
ULTIMATE_IO.cpp 极速 I/O
Read_Write 快读快写
basis 线性基(异或基)
mo-algorithm 莫队算法
三分 三分搜索(整数域)
ternary_search 三分搜索(实数域)
尺取 双指针 / 滑动窗口
adjacent_diff 差分数组
二维差分与前缀和 二维差分 & 前缀和
动态二阶差分 动态二阶差分
dull_queue_stack 单调队列 & 单调栈
lowbit应用 lowbit 应用
区间颜色数 区间颜色数
区间包含 区间包含判断
interval_merge 区间合并
找可以作为最小值的区间,相同值不重叠 区间最小值
括号序列 括号序列
二分图染色.cpp 二分图判断
rings-count 环计数
线段树套线性基 线段树套线性基
多叉树 多叉树
discrete_typedsu_prefixsum 离散化 + 并查集 + 前缀和
筛法 线性筛综合
二维树状数组 二维树状数组
gen.py 数据生成器
quine.cpp Quine 程序

题解平台 | Online Judges

平台 题目数 目录
Luogu 洛谷 655+ luogu.com.cn/
Codeforces 608+ codeforces.com/
AtCoder 48+ atcoder.jp/
牛客竞赛 67+ ac.nowcoder.com/
VJudge 51+ vjudge.net/
HDU OJ 22+ acm.hdu.edu.cn/
QOJ 27+ qoj.ac/
PinTia 拼题 A 9+ pintia.cn/
ZJUT OJ 11+ zjutacm.cn/
ThemeCp 21+ themecp.vercel.app/
Reach-Top 16+ reach-top.cn/
Saikr 4+ saikr.com/
Yukicoder 3+ yukicoder.me/
ECNU OJ 3+ acm.ecnu.edu.cn/
百度 AI Star 3+ astar.baidu.com/
CSP 3+ csp.ccf.org.cn/
代码源 2+ daimayuan.top/
Kedacun 3+ kedacun.ac/
BCPC 1+ bcpc.net.cn/

竞赛题解 | Contests

竞赛 目录
ICPC 2025 网络赛(赛 1) 2025icpc1/
ICPC 2025 网络赛(赛 2) 2025icpc2/
ICPC 2022 Hangzhou icpc2022hangzhou/
CCPC ccpc/
天梯赛 2025 天梯赛2025/
2024 ZJUT 迎新赛预赛 2024ZJUT迎新赛预赛_A-M_satsky/
网络赛 网络赛/
Daily CF Problems Daily_CF_Problems/
Jiangly 模板参考 jiangly/

目录结构 | Structure

CompetitiveProgramming/
├── Templates/              # 算法模板(115+ 类别)
├── codeforces.com/         # Codeforces 题解
├── luogu.com.cn/           # 洛谷题解
├── atcoder.jp/             # AtCoder 题解
├── ac.nowcoder.com/        # 牛客竞赛题解
├── vjudge.net/             # VJudge 题解
├── acm.hdu.edu.cn/         # HDU OJ 题解
├── qoj.ac/                 # QOJ 题解
├── ...                     # 其他平台题解
├── 2025icpc1/              # ICPC 2025 网络赛 1
├── 2025icpc2/              # ICPC 2025 网络赛 2
├── icpc2022hangzhou/       # ICPC 2022 Hangzhou
├── ccpc/                   # CCPC 题解
├── Daily_CF_Problems/      # 每日 CF 题目
├── jiangly/                # jiangly 模板参考
└── play/                   # 练习 / 实验代码

主要使用语言:C++ | Main language: C++

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors