写在前面:

第一年小白拿铜牌,第二年队友出走,加上疫情原因不能回校训练导致心底防线彻底崩盘,于是选择退役。

自从退役之后,一直想我打了那么久的ACM,什么也没留下觉得很难受,突然想到我打ACM的时候,模板的程度参差不一,有的时候错误的模板真的会影响结果,所以我想整理完我的和我的队友的模板留给未来的小伙伴们,希望你们可以在这条路上越走越远,加油!

这些模板有些是自己写的,有些是借鉴大佬邝斌,李煜东的,还有是去洛谷上看的那些榜一的题解然后修改的,过程坎坷,但是代码经过测试,应该是同时具备稳定性和效率性,希望可以帮助到大家

数学:

数论–康托展开与逆康托展开模板

数论–组合数(卢卡斯+扩展卢卡斯)模板

数论–Miller_Rabin判断素数

数论–中国剩余定理模板

数论–逆元(拓展欧几里得)模板

数论–逆元(费马小定理)模板

数学–数论–因子和线性筛 (模板)

数学–数论–随机算法–Pollard Rho 大数分解算法(纯模板带输出)

数学–数论–快速幂–最大公约数–位运算模板

线性筛求积性函数的模板

数学–图论–莫比乌斯线性筛模板

数学–数论—欧拉筛 模板

数学–数论–素数

图论:

搜索:

搜索相关:

最短路:

SPFA模板

Dijkstra模板

Floyd模板

图论--最短路--第K短路(IDA*)(IDA Star)模板

图论--最短路--dijkstra(含路径输出)模板

图论--最长路--基于SPFA的调整模板

传递闭包:

传递闭包

欧拉与哈密尔顿路径:

欧拉回路

图论--欧拉回路--弗罗莱算法模板

hamilton路径

LCA:

图论--LCA--Tarjan(离线)

图论--LCA--树上倍增法(在线)

图论--LCA--在线RMQ ST

最小环:

图论--最小环--Floyd模板

树的直径:

图论--树的直径--DFS+树形DP模板

树的重心:

图论--树的重心(DFS) 模板

生成树:

图论--最小生成树--Kruscal 模板

图论--最短路径生成树(最小边权和)模板

图论--最短路径生成树计数--模板

图论--生成树--次小生成树模板

图论--曼哈顿距离最小生成树模板

图论--生成树计数模板

图论--最小生成树--Prim算法(带边输出)模板

连通性:

图论--割点--Tarjan模板

图论--割边--Tarjan模板

图论--边双连通V-DCC缩点

图论--双连通E-DCC缩点模板

图论--强连通SCC缩点模板

二分图匹配:

图论--二分图最大匹配--匈牙利

图论--二分图最佳完美匹配--KM

一般图带花树匹配:

图论--一般图带花树匹配(缩点)

网络流:

最大流(EK)

最大流(Dinic矩阵版)

最大流(Dinic邻接表版)

最大流(Hlpp)

2-SAT:

2-SAT--暴力染色法求字典序最小模版

2-SAT--暴力染色法模板(字典序最小解) RQ的板子

2-SAT--Tarjan连通分量+拓扑排序O(N+M)模板

拓扑排序:

图论--拓扑排序--判断是否为DAG图

差分约束:

图论--差分约束模板

数据结构

单调栈单调队列:

单调栈

单调队列

字符串:

KMP

Tire树

字符串hash

堆栈:

二叉堆

区间最值:

ST算法

树状数组

线段树:

基础算法

二分法模板

信息竞赛进阶指南–二分法

枚举法

离散化

归并排序求逆序对

任意进制转化

lowbit运算

递归法求中缀表达式的值

ST算法

写在最后:

我叫风骨散人,名字的意思是我多想可以不低头的自由生活,可现实却不是这样。家境贫寒,总得向这个世界低头,所以我一直在奋斗,想改变我的命运给亲人好的生活,希望同样被生活绑架的你可以通过自己的努力改变现状,深知成年人的世界里没有容易二字。目前是一名在校大学生,预计考研,热爱编程,热爱技术,喜欢分享,知识无界,希望我的分享可以帮到你!

如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文!

感谢大家的阅读!

ACM模板合集的更多相关文章

  1. ACM算法模板 · 一些常用的算法模板-模板合集(打比赛专用)

    ACM算法模板 · 一些常用的算法模板-模板合集(打比赛专用)

  2. 学渣乱搞系列之Tarjan模板合集

    学渣乱搞系列之Tarjan模板合集 by 狂徒归来 一.求强连通子图 #include <iostream> #include <cstdio> #include <cs ...

  3. 最短路算法模板合集(Dijkstar,Dijkstar(优先队列优化), 多源最短路Floyd)

    再开始前我们先普及一下简单的图论知识 图的保存: 1.邻接矩阵. G[maxn][maxn]; 2.邻接表 邻接表我们有两种方式 (1)vector< Node > G[maxn]; 这个 ...

  4. 有趣的线段树模板合集(线段树,最短/长路,单调栈,线段树合并,线段树分裂,树上差分,Tarjan-LCA,势能线段树,李超线段树)

    线段树分裂 以某个键值为中点将线段树分裂成左右两部分,应该类似Treap的分裂吧(我菜不会Treap).一般应用于区间排序. 方法很简单,就是把分裂之后的两棵树的重复的\(\log\)个节点新建出来, ...

  5. ACM经历与感悟合集

    ACM经历与感悟合集 ACM起步要点总结(转哈工大) ACM 荣耀之路-学习方法 ACM感悟 一位ACMer过来人的心得 ACM经历总结 大学ACM的总结 ACM大牛的退役贴 各大牛退役总结帖 女生应 ...

  6. [Erlang 0105] Erlang Resources 小站 2013年1月~6月资讯合集

    很多事情要做,一件一件来; Erlang Resources 小站 2013年1月~6月资讯合集,方便检索.      小站地址: http://site.douban.com/204209/     ...

  7. Javascript 语言精粹 代码片段合集

    Javascript 语言精粹 代码片段合集 标签:Douglas-Crockford Javascript 最佳实践 原文链接 更好的阅读体验 使用一个method 方法定义新方法 Function ...

  8. php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27)

    php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27) 比较好的模版 免费模板网,提供大量DIV+CSS布局网页模板下载及后台管理 ...

  9. 不容错过的UI设计素材大合集

    免费PSD素材 TETHR by InVision 这是出自InVision的8款PSD文件,其中包含了100个模板和超过500个UI控件.来自InVision和UI8的设计师一同协作完成了这套UI ...

随机推荐

  1. 以太坊代币,USDT归集流程图

    1.用户充值 600 代币 (网站小助手会及时监听到用户的充值信息,并回调给用户填写的URL地址) 2.会员转账600代币,属于大额转账,开始触发系统的自动汇集程序 注:这里系统检测到会员的地址并没有 ...

  2. javascript入门 之 bind()

    <!DOCTYPE html> <HTML> <HEAD> <meta http-equiv="content-type" content ...

  3. javascript入门 之 用bootstrap-table写一个表格

    方法1(对普通的 table 设置 data-toggle="table" 即可): <!DOCTYPE html> <html> <head> ...

  4. Linux 文件管理篇(二 目录信息)

    其它在线帮助文档    usr/share/doc root用户的相关信息    etc/passwd 用户密码        etc/shadow 所有用户群组        etc/group 返 ...

  5. NullPointerException的处理新方式,Java14真的太香了

    在Java语言中,处理空指针往往是一件很头疼的事情,一不小心,说不定就搞出个线上Bug,让你的绩效考核拿到3.25.最近新出的Java14,相信大家都有所耳闻,那么今天就来看看,面对NullPoint ...

  6. python3(六) for while

    # Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来 names = ['Michael', 'Bob', 'Tracy'] for name in ...

  7. 对短路变形POJ3615

    Farmer John wants the cows to prepare for the county jumping competition, so Bessie and the gang are ...

  8. mybatis一级缓存让我憔悴

    Mybatis对缓存提供支持,是默认开启一级缓存. 来一段代码,这边使用的是mybatis-plus框架,通过构建 QueryWrapper 查询类来实现的. @Transactional publi ...

  9. Git敏捷开发--rebase命令

    git rebase是git下比较常用的命令,以下记录自己遇到较多的使用场景. 合并分支 在多人协作的项目中,拉分支是很常见的事情,经常需要同步自己的分支与远端master分支一致,有两种方式: gi ...

  10. frame/iframe多表单切换

    应用场景: 在Web应用中经常会遇到frame/iframe表单嵌套页面的应用,WebDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌页面上的元素无法直接定位.这时就 ...