算法&数据结构
觉得系列
数学
卡特兰数:\(C_{2n}^{n}-C_{2n}^{n+1}\),出栈入栈,括号匹配
斯特林数
组合数学:
二项式定理:\(\sum_{i=0}^{n}C_n^i*x^i*y^{n-i}=(x+y)^n\)
\(\sum_{i=k}^{n}C_i^k=C_{n+1}^{k+1}\)
抽屉原理
错排公式:\(f[n]=(f[n-1]+f[n-2])*(n-1)\)
平方和公式:\(\frac{n(n+1)(2n+1)}{6}\)
立方和公式:\((\frac{n(n+1)}{2})^2\)
整除分块:[缩进优化]
概率与期望:
算系数
算方案
方差=平方的期望-期望的平方
dp
各种背包问题
树型dp
动态dp(注意矩乘的顺序)
斜率优化
壮鸭dp
线段树优化dp
线段树
线段树优化建图
主席树
线性基
字符串
马拉车(注意边界)
KMP
并不觉得会考的SAM 咕
并不觉得会考的AC自动机:它的fail等于它的father的fail的它儿子,记住这个就好啦图
二分图
最小点覆盖=最大匹配
最小边覆盖=最大独立集=n-最大匹配
KM
二分
- 整体二分
分治
- cdq分治
- 树的分治
- 点分治
数据结构
set
multiset
bitset:
_Find_first()
,_Find_next(x)
树
dsu on tree
欧拉序——ST表求LCA
倍增
克鲁斯卡尔重构树
链表
blingbling打表找规律大法又来啦
不觉得系列
- 高斯消元
- 网络流
- 自适应辛普森积分:\((b-a)*\frac{f(a)+f(b)+4f(\frac{a+b}{2})}{6}\)
小技巧
零负担抽象- 中位数:大于的赋为1,小于赋值为-1
化简题意:先删掉某些限制思考问题
- 子树问题——dfs序
- 行列问题——二分图
小范围暴力,大范围高效算法:[缩进优化],[1115T1]
- random_shuffle(a+1,a+n+1)
听说random_shuffle和喵喵喵更配哦 nth_element(a+l,a+k,a+r+1);
Notice
线段树之类的不知道空间可以造数据测一下
推柿子的题目要敢推,
至少展开一下装装样子是要的吧看清数据范围
比如“对于100%的数据balabala”放在部分分前面
再比如“数据的绝对值balabala”说明有负数
多组数据记得清零,倍增的father数组也要清空
强制在线特判答案的时候记得更新
不要轻易丢掉觉得有一点点错的想法,除非能清楚地知道为什么错了
想清楚了再开始码,先想尽办法把自己X掉
看清题意啊注意题意的转换,先把乱七八糟的背景都去掉,这样比较容易看出方法
一定一定要留足时间检查!!!!!!!!
- int类型函数注意返回值!!!!!!!!!!!!!!!!!!!!!!!!!!
输出字符串不要自己打
明天比赛系列
ZJ-00604 怀挺!!!
诶呀,差点忘了——everyone RP++(≧▽≦)/ qwq