OI资源分享

AFO了,做点贡献好了。分享部分算法模板和做过的题目: 退役后遗产,各大网站的题目源程序+Word题解+(资料?),约1000道题目。

P.S.: 以下内容已经停止维护,无法保证其完备性和时效性。


UPD2019.07.06:

Algorithm Template

从老物件里翻出来的部分算法模板以及详细说明:

百度云链接 提取码: osjs 二维码:

  • 内容包含: 计算几何,扩展埃氏筛,扩展CRT,FFT(MXFFT,NTT,FWT),FhqTreap,匈牙利算法,KM算法,KMP,左偏树,Manacher,NIM积,Pollard-$\rho$,Miller-Rabin,求原根,后缀数组,后缀自动机,模拟退火,Tarjan,Z-BOX。

Problem Archive

这个资源分享经常被查封不知道为啥。现在用rar压缩包的方式发,解压密码: magolor

百度云链接 提取码: vt4o 二维码:


下面是题目表格。方便Ctrl+F查找。说明:

  1. 里面记录了从2017年4月11日开始的做题记录。由于时间跨度久远,码风和作者水平也在变化中。提供这些资源的原因主要是,其中有一些题目在网络上比较难找到题解和可以用于对拍的AC代码,作者希望能对OI做一点微小的贡献。由于作者水平有限,不保证正确性。
  2. 其中涉及的大部分OJ应该了解或可以百度到或可以在Vjudge上找到,一些相对不知名OJ解释:

  3. 预警,题解中可能含有大量超链接(指题解之间相互引用);可能存在少量待填的坑、语法、逻辑错误。
  4. 列表里一些过于简单的题目没有源代码和题解(比如Codeforces Div.2 A)。


OJ 题号 题目内容
51Nod 1052 DP
51Nod 1172 MXFFT
51Nod 1184 洲阁筛思想
51Nod 1222 莫比乌斯反演+暴力
51Nod 1325 最大权闭合子图
51Nod 1327 DP
51Nod 1371 DP
51Nod 1379 思路题+斐波那契通项公式
51Nod 1575 莫比乌斯反演+扩展埃氏筛
51Nod 1577 离线+线性基
51Nod 1584 莫比乌斯反演+拓展线性筛法
51Nod 1597 多重背包计数+DP
51Nod 1598 线段树
51Nod 1601 Trie+分治
51Nod 1616 数论
51Nod 1667 容斥+组合数学
51Nod 1683 状压DP
51Nod 1728 指数生成函数+NTT+多项式求逆+多项式求ln+多项式求exp
51Nod 1753 哈希+并查集
51Nod 1773 异或FWT
51Nod 1778 数论+线性筛求整数k次幂
51Nod 1780 DP
51Nod 1792 容斥+组合数学+线段树
51Nod 1810 分治
51Nod 1811 线段树合并
51Nod 1821 思路题
51Nod 1824 Lucas性质+容斥+DP+分治
51Nod 1832 思路题+高精度
51Nod 1835 DP
51Nod 1843 DP套DP
51Nod 1849 期望线性性+概率DP
51Nod 1863 主席树+最短路
51Nod 1868 容斥+DFS序
51Nod 1871 离散化+并查集
51Nod 1920 DP
51Nod 1952 思路题+单调队列
51Nod/SDJX[2] 1355/D1T3 莫比乌斯反演
Aizu 1373 线段树
AtCoder 1983 组合数学
AtCoder 1984 字典序拓扑排序+优化建图
AtCoder 1999 思路题+博弈论
AtCoder 2000 DP:组合数学
AtCoder 2005 结论题
AtCoder 2006 矩阵乘法
AtCoder 2044 贪心
AtCoder 2046 环套树+结论题
AtCoder 2070 组合数学
AtCoder 2134 思路题+Kruskal
AtCoder 2167 思路题:分类讨论+三部图染色
AtCoder 2292 DP
AtCoder 2293 树形DP+状压DP+贪心
AtCoder 2305 博弈论
AtCoder 2339 结论题+二分图
AtCoder 2371 管道取珠+矩阵乘法
AtCoder 2377 并查集+启发式合并
AtCoder 2383 思路题+DP
AtCoder 2390 博弈论+DP+枚举子集
AtCoder 2657 状压DP+枚举子集
AtCoder 2669 思路题+DP
AtCoder 2674 组合数学
AtCoder 2675 结论题+欧拉回路
AtCoder 2704 DP:图论模型+组合数学+NTT
AtCoder 2705 期望+组合数学
AtCoder 3536 DP:贪心
AtCoder 3558 组合数学
AtCoder 3576 DP+组合数学
AtCoder 3611 点分治+Kruskal
AtCoder 3614 贪心+STL
AtCoder 3615 DFS
AtCoder 3616 Kruskal树
AtCoder 3617 Cayley定理+组合数学+DP
AtCoder 3673 DP+线段树
AtCoder 3720 构造题
AtCoder 3721 树形DP+长链剖分
AtCoder 3728 组合数学+DP
AtCoder 3867 数位DP
AtCoder 3868 计算几何:凸包+三角函数
AtCoder 3870 区间DP
AtCoder 3936 数论
AtCoder 3937 数论分块
AtCoder 3938 构造题
AtCoder 3939 博弈论
AtCoder 3952 STL
AtCoder 3953 哈希
AtCoder 3954 DP+组合数学
AtCoder 3955 结论题:归纳+博弈
AtCoder 3957 贪心+并查集
AtCoder 3958 结论题
AtCoder 3959 结论题
AtCoder 3960 结论题
AtCoder 3961 结论题+直径
AtCoder 3962 DP:子问题划分+组合数学
AtCoder 3964 模拟
AtCoder 3965 思路题
AtCoder 3966 贪心+STL
AtCoder 3967 思路题+黑白染色
AtCoder 3978 模拟
AtCoder 3979 构造题
AtCoder 3980 Kruskal+组合数学
AtCoder 3981 容斥+组合数学
AtCoder 4113 爆搜+构造题
AtCoder 4114 构造题+直径
AtCoder 4130 STL
AtCoder 4131 并查集
AtCoder 4132 DP:排序问题的DP
AtCoder 4133 贪心+直径
AtCoder 4144 树形DP:贪心+并查集
AtCoder 4144 树形DP:贪心+并查集
AtCoder 4160 结论题
AtCoder 4161 思路题+构造题
AtCoder 4162 黑白染色+背包DP
AtCoder 4163 思路题+哈希
AtCoder 4166 数论
AtCoder 4167 二分
AtCoder 4168 FWT
BJ80JX2017[1] D10T1 网络流+最小割离散变量模型
BJ80JX2017[1] D12T1 DP套DP+树形DP
BJ80JX2017[1] D4T1 按位DP+枚举子集
BJ80JX2017[1] D5T2 贡献法+组合数学
BJ80JX2017[1] D5T3 思路题+构造题
BJ80JX2017[1] D8T2 DP
BJ80JX2017[1] D9T1 Trie+区间DP
BZOJ 1023 仙人掌
BZOJ 1065 环套树+树形背包DP
BZOJ 1069 计算几何:旋转卡壳
BZOJ 1095 动态点分治
BZOJ 1488 Polya定理+爆搜+组合数学
BZOJ 1500 FhqTreap
BZOJ 1502 计算几何:圆切线+自适应辛普森积分
BZOJ 1563 决策单调性DP
BZOJ 1566 DP
BZOJ 1758 二分+点分治+单调队列
BZOJ 1917 网络流+退流+贪心
BZOJ 1920 费用流+线段树
BZOJ 1927 费用流
BZOJ 1937 KM算法
BZOJ 1941 计算几何:KD树
BZOJ 1951 Lucas定理
BZOJ 2006 堆维护K优值+ST表
BZOJ 2037 区间DP
BZOJ 2111 DP+Lucas定理
BZOJ 2115 线性基
BZOJ 2118 组合背包+最短路
BZOJ 2119 后缀数组+调和级数枚举
BZOJ 2124 树状数组维护哈希值
BZOJ 2142 扩展Lucas定理
BZOJ 2160 回文自动机PAM
BZOJ 2212 线段树合并
BZOJ 2219 数论
BZOJ 2342 回文自动机PAM
BZOJ 2535 思路题:拓扑序性质
BZOJ 2565 回文自动机PAM
BZOJ 2618 计算几何:半平面交
BZOJ 2654 WQS二分
BZOJ 2730 点双连通分量+分类讨论
BZOJ 2732 计算几何:半平面交
BZOJ 2749 数论:欧拉函数
BZOJ 2756 分类讨论+网络流
BZOJ 2815 灭绝树
BZOJ 2827 FhqTreap
BZOJ 2878 环套树+概率DP
BZOJ 2879 费用流+动态加边
BZOJ 2956 数论
BZOJ 2957 线段树
BZOJ 2959 树链剖分+并查集
BZOJ 3064 吉利线段树
BZOJ 3129 扩展Lucas定理+容斥
BZOJ 3168 高斯消元+二分图最小字典序匹配
BZOJ 3197 DP+树哈希+KM算法
BZOJ 3309 莫比乌斯反演
BZOJ 3328 单位根反演+原根+矩阵乘法
BZOJ 3329 数位DP+斐波那契通项公式
BZOJ 3331 点双连通分量+树上差分
BZOJ 3337 块状链表
BZOJ 3462 多重背包+组合数
BZOJ 3471 KM算法+WQS二分
BZOJ 3481 数论+Pollard-Rho+Miller-Rabin
BZOJ 3505 组合数学
BZOJ 3512 杜教筛
BZOJ 3514 LCT+主席树
BZOJ 3529 莫比乌斯反演+树状数组
BZOJ 3566 树形DP+概率
BZOJ 3569 思路题+线性基
BZOJ 3611 虚树+DP
BZOJ 3620 KMP+border性质
BZOJ 3622 容斥+组合数学+DP
BZOJ 3625 生成函数+NTT+多项式求逆+多项式开根
BZOJ 3672 斜率优化DP+树链剖分+凸包
BZOJ 3711 单调性+线段树+分治DP
BZOJ 3730 动态点分治+树状数组
BZOJ 3810 网格划分DP
BZOJ 3817 类欧几里得算法
BZOJ 3875 DP+最短路
BZOJ 3884 数论:扩展欧拉定理
BZOJ 3930 莫比乌斯反演
BZOJ 4008 期望+DP
BZOJ 4025 LCT+线段树分治+带权并查集
BZOJ 4161 特征多项式+暴力多项式取模
BZOJ 4162 高斯消元+拉格朗日插值+特征多项式+暴力多项式取模+矩阵乘法
BZOJ 4176 莫比乌斯反演+杜教筛
BZOJ 4289 优化建图+最短路
BZOJ 4300 DP
BZOJ 4314 数论+组合数学+DP
BZOJ 4340 后缀数组+爆搜
BZOJ 4345 堆维护K优值+ST表
BZOJ 4347 DP+状态优化
BZOJ 4361 DP+容斥+树状数组
BZOJ 4430 容斥+二维数点
BZOJ 4455 容斥+树形DP
BZOJ 4487 容斥+组合数学
BZOJ 4518 斜率优化+WQS二分
BZOJ 4537 平方分割+并查集
BZOJ 4538 树链剖分+线段树+堆
BZOJ 4540 二维数点+扫描线+线段树
BZOJ 4552 FhqTreap+Treap-Union
BZOJ 4555 NTT卷积
BZOJ 4556 后缀数组+ST表+二分+主席树+后缀自动机SAM
BZOJ 4569 并查集+ST表优化连边
BZOJ 4572 轮廓线DP
BZOJ 4591 Lucas定理
BZOJ 4596 容斥+矩阵树定理
BZOJ 4619 贪心
BZOJ 4621 DP:最小表示法+转移顺序
BZOJ 4625 最小割
BZOJ 4644 线性基+线段树分治
BZOJ 4650 调和级数枚举+二分+哈希
BZOJ 4652 莫比乌斯反演+杜教筛
BZOJ 4653 线段树
BZOJ 4657 最小割+离散变量模型
BZOJ 4693 Lucas性质+数位DP
BZOJ 4753 树形依赖背包DP+分数规划
BZOJ 4802 Pollard-Rho+Miller-Rabin
BZOJ 4812 树上分块+手写bitset
BZOJ 4815 莫比乌斯反演+分块
BZOJ 4819 二分+KM
BZOJ 4820 KMP+高斯消元
BZOJ 4869 均摊线段树+扩展欧拉定理
BZOJ 4870 倍增DP
BZOJ 4871 树形DP:分类讨论
BZOJ 4873 最小割+最大权闭合子图
BZOJ 4896 Trie+均摊分析
BZOJ 4897 区间DP
BZOJ 4910 树形依赖背包DP+单调队列多重背包
BZOJ 4911 树链剖分+链分治+异或FWT
BZOJ 4913 生成函数+MXFFT+多项式求逆+多项式求ln
BZOJ 4916 杜教筛
BZOJ 4922 DP+贪心
BZOJ 4945 2-SAT
BZOJ 4946 贪心
BZOJ 4974 思路题+KMP+并查集
BZOJ 5006 期望+DP+hashtable
BZOJ 5020 多项式+LCT
BZOJ 5093 斯特林数+NTT
BZOJ 5107 DP
BZOJ 5108 按位统计+组合数学
BZOJ 5109 思路题+拓扑排序+bitset传递闭包
BZOJ 5110 思路题+树状数组
BZOJ 5120 费用流
BZOJ 5210 树链剖分+链分治+堆删除
BZOJ 5249 贪心+线段树
BZOJ 5251 匈牙利+二分
BZOJ 5252 WQS二分+树形DP
BZOJ 5314 树形DP:均摊分析
BZOJ 5315 圆方树+DP+容斥
BZOJ 5316 计算几何:圆弧交+网络流退流
BZOJ 5317 计算几何:凸包+Minkowski和
BZOJ 5319 主席树
BZOJ 5328 计算几何:向量旋转+线段树
BZOJ 5329 圆方树
BZOJ 5333 背包DP:思路题
BZOJ 5340 DP:背包退流
BZOJ/SDJX[2] 4310/D5T1 后缀自动机SAM+二分+哈希
BZOJ[] 1100 计算几何+Manacher
BZOJ[] 1146 树剖LCA+带修主席树
BZOJ[] 1367 贪心+左偏树
BZOJ[] 1901 带修主席树
BZOJ[] 1918 模拟+爆搜+hashtable
BZOJ[] 1921 后缀自动机SAM+点分治+平方分割
BZOJ[] 2554 概率期望
BZOJ[] 2627 莫比乌斯反演+Pollard-Rho+Miller-Rabin+拉格朗日插值+伯努利数
BZOJ[] 2693 莫比乌斯反演+拓展线性筛法
BZOJ[] 2694 莫比乌斯反演
BZOJ[] 2725 最短路+线段树
BZOJ[] 2865 后缀数组+线段树
BZOJ[] 2976 EXCRT
BZOJ[] 2987 类欧几里得算法
BZOJ[] 3136 数论+DP+贪心
BZOJ[] 3145 后缀自动机SAM+后缀数组(SAMSA)+dsu-on-tree
BZOJ[] 3236 莫队+树状数组
BZOJ[] 3456 指数生成函数+NTT+多项式求逆+多项式求ln
BZOJ[] 3501 Touchard同余+贝尔数+CRT
BZOJ[] 3653 DFS序+主席树
BZOJ[] 3722 DP+构造
BZOJ[] 3832 拓扑排序+堆删除
BZOJ[] 3836 状压DP+树形DP
BZOJ[] 3881 AC自动机+BFS树剖LCA+树状数组
BZOJ[] 3899 圆方树+树哈希+组合数学
BZOJ[] 3924 动态点分治+RMQLCA
BZOJ[] 4103 主席树
BZOJ[] 4105 均摊线段树
BZOJ[] 4137 线段树分治+可持久化Trie
BZOJ[] 4144 最短路+最小生成树+树上倍增
BZOJ[] 4182 树形背包DP+点分治+单调队列多重背包
BZOJ[] 4271 背包DP+高精度
BZOJ[] 4380 区间DP
BZOJ[] 4382 哈希
BZOJ[] 4383 ST表优化连边
BZOJ[] 4398 优化建图+最短路
BZOJ[] 4408 主席树
BZOJ[] 4502 AC自动机+DP
BZOJ[] 4503 FFT通配符匹配
BZOJ[] 4534 set消逆序对+线段树
BZOJ[] 4568 树剖+ST表+线性基
BZOJ[] 4671 递推容斥系数+线性基
BZOJ[] 4713 DP+bitset
BZOJ[] 4777 结论题+STL
BZOJ[] 5072 树形背包DP
CodeChef CHSQR 构造题
CodeChef COT5 李超树
CodeChef CUTTREE 点分治+期望+MXFFT
CodeChef DGCD 树剖+差分+线段树
CodeChef DISTNUM 平衡树+CDQ分治+二维数点
CodeChef EASYEX 期望+组合数学+生成函数+FFT
CodeChef FAVNUM 数位DP+AC自动机+二分答案
CodeChef FIBTREE 树剖+主席树+标记永久化+斐波那契通项公式
CodeChef FN 二次剩余+BSGS
CodeChef GERALD08 超现实数+高精度+dsu-on-tree
CodeChef JTREE DP+树剖
CodeChef PALPROB 回文自动机PAM
CodeChef PRIMEDST 点分治+FFT
CodeChef PUSHFLOW LCT
CodeChef QRECT CDQ分治+二维数点+手写bitset
CodeChef STREETTA 李超树+线段树
CodeChef SUBQUERY 后缀自动机SAM+二维数点
CodeChef SUMCUBE 管道取珠+分类讨论+三元环计数
CodeChef TREECNT2 莫比乌斯反演+调和级数枚举+并查集
CodeChef TWOCOINS 树形DP
Codeforces 1000A 贪心
Codeforces 1000B 前缀和
Codeforces 1000C 差分
Codeforces 1000D DP
Codeforces 1000E 圆方树+直径
Codeforces 1000F 线段树+二维数点
Codeforces 1000G DP+链分治+树剖LCA
Codeforces 113D 概率DP+高斯消元
Codeforces 115D 自动机+DP
Codeforces 126E 爆搜+匈牙利+构造题
Codeforces 17E 回文自动机PAM
Codeforces 193C 构造题
Codeforces 193D 分块+线段树
Codeforces 193E 思路题+矩阵乘法
Codeforces 201A 构造题
Codeforces 201B 三分
Codeforces 201C DP
Codeforces 201D 状压DP
Codeforces 201E 思路题+二分
Codeforces 207C3 倍增+哈希+树状数组
Codeforces 226E DFS序+主席树
Codeforces 232D 后缀数组+主席树+ST表
Codeforces 251D 按位贪心+改造线性基
Codeforces 251E DP:分类讨论
Codeforces 274E 模拟+STL
Codeforces 280D 费用流+线段树
Codeforces 293B 爆搜
Codeforces 30E Manacher+二分+双哈希
Codeforces 314E DP:卡常数
Codeforces 316E3 矩阵乘法+线段树+区间树状数组
Codeforces 319E 思路题+线段树+并查集
Codeforces 331D3 扫描线+线段树+倍增
Codeforces 338E FhqTreap
Codeforces 355D 状压DP+博弈论
Codeforces 380E 链表
Codeforces 388D 线性基+数位DP
Codeforces 38H DP:状态优化
Codeforces 429E 思路题+欧拉回路
Codeforces 438D 均摊线段树
Codeforces 449D FWT+容斥
Codeforces 44G 线段树套平衡树+KD树
Codeforces 453A 组合数学
Codeforces 453B 状压DP
Codeforces 453C 构造+DFS
Codeforces 453D 异或FWT
Codeforces 453E 离线+树状数组+ODT
Codeforces 482E LCT维护虚边信息
Codeforces 48G 环套树+two-pointers
Codeforces 500E 并查集+线段树
Codeforces 512D 树形背包DP:组合数学+除法原理
Codeforces 512E 构造题
Codeforces 521E DFS+树上差分
Codeforces 547D 思路题+欧拉回路
Codeforces 54E 计算几何:旋转卡壳
Codeforces 553A 组合数学
Codeforces 553B 思路题
Codeforces 553C 黑白染色+组合数学
Codeforces 553D 贪心
Codeforces 553E 概率DP+分治FFT
Codeforces 576D DP+bitset优化矩阵乘法
Codeforces 576E LCT+线段树分治+带权并查集
Codeforces 58E DP:字符串状态+分类讨论
Codeforces 600E dsu-on-tree
Codeforces 663E FWT
Codeforces 668A 离线+模拟
Codeforces 668B 思路题+置换
Codeforces 668C 思路题+二次方程求根
Codeforces 668D 树状数组+STL
Codeforces 671B 思路题+二分
Codeforces 671C 调和级数枚举+ODT
Codeforces 687D 线段树+带权并查集
Codeforces 689D 二分+ST表
Codeforces 700E 后缀自动机SAM+主席树
Codeforces 704C DP:图论模型
Codeforces 704D 有源汇上下界最大流
Codeforces 704E 计算几何:扫描线+STL+树链剖分
Codeforces 706E 链表
Codeforces 711E 结论题
Codeforces 712E 线段树+概率
Codeforces 716D 构造+二分+Dijkstra
Codeforces 717A 组合数学+斐波那契通项公式
Codeforces 717G 哈希+费用流
Codeforces 718E 思路题+状压DP
Codeforces 722E 期望+容斥+组合数学
Codeforces 734F 构造题
Codeforces 739E WQS二分套WQS二分
Codeforces 740C 思路题
Codeforces 750E 线段树维护矩阵
Codeforces 762F 树形DP+状压DP
Codeforces 763C 结论题+数论
Codeforces 771D DP
Codeforces 771E DP+贪心
Codeforces 788D 思路题+交互题
Codeforces 794G 组合数学+莫比乌斯反演
Codeforces 804D 直径+平方分割
Codeforces 809E 莫比乌斯反演+RMQLCA+虚树
Codeforces 814E 组合数学+DP
Codeforces 827D 树上倍增
Codeforces 830C 数论
Codeforces 830E 构造题+分类讨论
Codeforces 835D DP
Codeforces 838C 博弈+DP+Lucas性质+子集枚举+卡常数
Codeforces 838D 组合数学
Codeforces 839A 思路题
Codeforces 839B 分类讨论
Codeforces 839B 贪心+分类讨论
Codeforces 839C 思路题
Codeforces 839D 思路题
Codeforces 839D 莫比乌斯反演
Codeforces 840E 分块+meet-in-the-middle
Codeforces 843D 线性Dijkstra
Codeforces 845A 模拟
Codeforces 845B 分类讨论
Codeforces 845C 模拟+前缀和
Codeforces 845D DP
Codeforces 845G 线性基
Codeforces 848C CDQ分治+二维数点
Codeforces 848D DP+组合数学
Codeforces 852A 构造+随机
Codeforces 852B 倍增DP
Codeforces 852C 结论题+贪心
Codeforces 852D 二分+最短路+网络流
Codeforces 852E 结论题
Codeforces 852F 数论+组合数学
Codeforces 852G Trie+哈希
Codeforces 852H 凸包+DP
Codeforces 852I 树上莫队
Codeforces 853D DP+结论题
Codeforces 854E 主席树
Codeforces 855A 模拟
Codeforces 855B 递推
Codeforces 855C 树形DP
Codeforces 855D LCA+分类讨论
Codeforces 855E 数位DP
Codeforces 858A 数学+模拟
Codeforces 858B 模拟
Codeforces 858C 贪心
Codeforces 858D 哈希+map
Codeforces 858F 结论题+DFS+树上差分
Codeforces 859F 贪心+单调队列
Codeforces 860E 虚树+DFS序差分+并查集
Codeforces 865D 贪心
Codeforces 865G 矩阵乘法+生成函数+特征多项式
Codeforces 868E 树形DP
Codeforces 868F DP+单调性+分治
Codeforces 870A 暴力
Codeforces 870B 分类讨论
Codeforces 870C 贪心
Codeforces 870D 结论题
Codeforces 870E 结论题
Codeforces 875E 思路题+二分
Codeforces 875F 贪心+并查集
Codeforces 876A 贪心
Codeforces 876B 数论
Codeforces 876C 枚举
Codeforces 876D 并查集
Codeforces 876E 字符串+拓扑排序
Codeforces 876F 按位+异或+ST表
Codeforces 878C 思路题+STL
Codeforces 878D 思路题+bitset
Codeforces 883A 数学+分类讨论
Codeforces 883B 拓扑排序+贪心
Codeforces 883H 构造
Codeforces 883J 贪心+线段树
Codeforces 883K 贪心+模拟
Codeforces 883M 结论题
Codeforces 888E meet-in-the-middle
Codeforces 889B 思路题+拓扑排序
Codeforces 889C 组合数学
Codeforces 889D 思路题+计算几何
Codeforces 889E 数论+DP
Codeforces 891C 并查集
Codeforces 893E 线性筛质因数+组合数学
Codeforces 893F 主席树
Codeforces 895E 期望+线段树
Codeforces 896A 递归
Codeforces 896B 贪心+交互题
Codeforces 896C ODT
Codeforces 896D 组合数学+质因数分解组合数
Codeforces 896E 分块+均摊暴力+标记永久化
Codeforces 899F 均摊线段树
Codeforces 900D 数论+容斥
Codeforces 901B 构造题
Codeforces 901C DFS找环+二分
Codeforces 901D 构造题+DFS
Codeforces 903F 轮廓线DP
Codeforces 906C 状压DP
Codeforces 906D 扩展欧拉定理
Codeforces 908C 模拟
Codeforces 908D 期望+DP
Codeforces 908E 组合数学+DP
Codeforces 908G 数位DP
Codeforces 911G bitset+分块+线段树分裂
Codeforces 914G FMT+FWT
Codeforces 916D 主席树
Codeforces 930A 递推
Codeforces 930B 枚举
Codeforces 930C DP:LIS
Codeforces 930D 扫描线
Codeforces 932D 倍增
Codeforces 932E 斯特林数+容斥+生成函数
Codeforces 932F DP+平衡树维护凸包+dsu-on-tree
Codeforces 936A 模拟
Codeforces 936B BFS+拓扑排序
Codeforces 936C 构造题
Codeforces 940A 枚举
Codeforces 940B DP
Codeforces 940C 构造题
Codeforces 940D 模拟
Codeforces 940E DP+ST表
Codeforces 940F 带修莫队
Codeforces 947A 数论
Codeforces 947B 二分
Codeforces 947C Trie
Codeforces 947D 思路题:分类讨论
Codeforces 949A 贪心+STL
Codeforces 949B 思路题:逆向推导
Codeforces 949C SCC
Codeforces 949E 思路题:爆搜+递归构造
Codeforces 954I FFT
Codeforces 963A 等比数列求和
Codeforces 963B 贪心+构造题
Codeforces 963C 结论题
Codeforces 963D 均摊暴力+哈希
Codeforces 966A 二分
Codeforces 966B 二分+贪心
Codeforces 966C 构造题+异或性质
Codeforces 966E 树链剖分+分块
Codeforces 975A STL
Codeforces 975B 模拟
Codeforces 975C 二分
Codeforces 975D 数学+STL
Codeforces 975E 计算几何:向量旋转+多边形重心
Codeforces 976D 构造题:递归构造
Codeforces 981A 暴力
Codeforces 981B STL
Codeforces 981C DFS
Codeforces 981D 按位贪心+DP
Codeforces 981E 离线+背包退流
Codeforces 981G ODT+线段树
Codeforces 985A 模拟
Codeforces 985B bitset+前缀和优化
Codeforces 985C 贪心
Codeforces 985D 数学
Codeforces 985E DP+队列
Codeforces 985F 后缀数组+哈希
Codeforces 985G 容斥+三元环计数+hashtable
Codeforces 986A 最短路
Codeforces 986B 树状数组逆序对
Codeforces 986C 枚举子集+思路题
Codeforces 986D 高精度+FFT
Codeforces 986E 数论+离线+均摊分析
Codeforces 989D 思路题+二分
Codeforces 990A 贪心
Codeforces 990B 模拟
Codeforces 990C STL
Codeforces 990D 构造题
Codeforces 990E 贪心
Codeforces 990F 网络流+贪心
Codeforces 990G 容斥+DFS
Codeforces 997A 贪心
Codeforces 997B 思路题
Codeforces 997C 容斥+组合数学
Codeforces-Gym 100197B DP:构造方案
Codeforces-Gym 100200F 树状数组/思路题
Codeforces-Gym 100201A 数论:扩展欧拉定理
Codeforces-Gym 100215A
Codeforces-Gym 100342C 结论题
Codeforces-Gym 100345I 差分+贪心
Codeforces-Gym 100548G 回文自动机PAM
Codeforces-Gym 100603I 贪心
Codeforces-Gym 100792B Z-BOX+线段树
Codeforces-Gym 100792J 有源汇上下界费用流
Codeforces-Gym 100851B BFS+高精度
Codeforces-Gym 100958C 结论题+分类讨论
Codeforces-Gym 100960D 交互题+矩阵求逆+整体二分
Codeforces-Gym 100962K 思路题+Tarjan割点
Codeforces-Gym 101190B 2-SAT+Trie优化建图
Codeforces-Gym 101190D 费用流
Codeforces-Gym 101190M 费用流+树形DP
Codeforces-Gym 101201E 计算几何:凸包+two-pointers
Codeforces-Gym 101262D DP+组合数学
Codeforces-Gym 101431C 链表
Codeforces-Gym 101438F 思路题+博弈论
Codeforces-Gym 101446B 状压DP
Codeforces-Gym 101608K 有源汇上下界费用流
Codeforces-Gym 101608L 状压DP:状态优化+爆搜
Codeforces-Gym 101620G 期望+Dijkstra
Codeforces-Gym 101620J 思路题+调和级数枚举
Codeforces-Gym 101620L 暴力+差分
Codeforces-Gym 101635d Trie+区间DP
Codeforces-Gym 215177A 费用流
Codeforces-Gym 215177C 构造题
Codeforces-Gym 215177D 构造题
Codeforces-Gym 215177E 辗转相除高斯消元
Codeforces-Gym 215177H 主席树
Codeforces-Gym 215177J 分块+单调队列多重背包
COGS 1960 动态点分治
COGS 2189 多项式系列操作
COGS 2314 可持久化平衡树
COGS 2353 DP:递推容斥系数+DAG计数
COGS 2396 DP:容斥+SCC计数
COGS 2397 SCC计数+分治FFT
CSAcademy bracket-grid 构造题
CSAcademy cats DP
CSAcademy divisible-matching Tutte定理+单位根反演+高斯消元+原根
CSAcademy hamming-distances 值域分块
CSAcademy magic 哈希
CSAcademy number-elimination DP+组合数学
CSAcademy popcorn WQS二分+线段树
CSAcademy six 状压DP
CSAcademy xor-transform Lucas性质+FWT
GoogleCodeJam 6314486A 匈牙利+two-pointers
GoogleCodeJam 6314486C 矩阵树定理+堆维护K优值
GoogleCodeJam 6314486D 计算几何:三维混合积
H2JX2017[1] D2T2 Floyd
H2JX2017[1] D2T3 期望
H2JX2017[1] D2T5 树形DP
H2JX2017[1] D3T5 贪心
H2JX2017[1] D4T1 思路题
H2JX2017[1] D4T4 BFS+线性Dijkstra
H2JX2017[1] D4T5 哈希+分类讨论
H2JX2017[1] D5T2 分块+Trie
H2JX2017[1] D5T5 状压DP
HackerRank animal-transport DP+线段树
HackerRank balls-and-boxes 费用流
HackerRank bank-accounts 模拟
HackerRank bonnie-and-clyde 圆方树+倍增LCA
HackerRank buy-maximum-stocks 优先队列+模拟
HackerRank costly-graphs 组合数学+斯特林数+NTT
HackerRank count-scorecards 兰道定理+组合数学+DP
HackerRank currencies 倍增DP+质因数分解+取对数
HackerRank dag-queries 分块+bitset
HackerRank factorial-array 均摊线段树
HackerRank geometric-trick 思路题
HackerRank how-many-substrings LCT+后缀自动机SAM+区间树状数组
HackerRank keko-the-brilliant DP+STL
HackerRank magic-cards 思路题
HackerRank maximal-tree-diameter 树形DP
HackerRank number-of-m-coprime-arrays 积性函数+矩阵快速幂+Pollard-Rho+Miller-Rabin
HackerRank palindromic-table 思路题+Kadane算法
HackerRank pseudo-isomorphic-substrings 后缀数组+链表
HackerRank rational-sums 数论+多项式
HackerRank recurrent-on-tree 矩阵+树形DP
HackerRank time-series-queries 前后缀最小值
HackerRank trader-profit DP
HackerRank transaction-certificates 生日悖论+构造
HackerRank tree-coordinates 直径性质+树形DP+树剖LCA
HackerRank two-strings-game 后缀自动机SAM+博弈论
HDU 1521 生成函数
HDU 1529 二分+差分约束
HDU 1814 2-SAT字典序最小解
HDU 1853 二分图最小权匹配KM算法
HDU 2255 二分图最大权匹配KM算法
HDU 3247 AC自动机+状压DP
HDU 3374 KMP+MinRep
HDU 3404 NIM积
HDU 3842 CDQ分治+斜率优化DP
HDU 3949 改造线性基
HDU 4055 DP
HDU 4093 DP:爆搜+容斥+组合数学
HDU 4333 Z-BOX
HDU 4347 计算几何:KD树
HDU 4352 数位DP+状压
HDU 4372 斯特林数+组合数学
HDU 4593 区间DP
HDU 4624 minmax容斥+概率DP
HDU 4625 斯特林数+树形DP
HDU 4747 思路题+线段树
HDU 4947 莫比乌斯反演+树状数组
HDU 5290 树形DP
HDU 5322 组合数学+DP
HDU 5381 离线+并查集+线段树
HDU 5382 数论
HDU 5402 思路题+黑白染色+贪心
HDU 5414 思路题+贪心
HDU 5634 均摊线段树
HDU 5659 后缀自动机SAM+差分
HDU 5700 线段树+二分
HDU 5726 离线+ST表GCD
HDU 5743 DP+meet-in-the-middle
HDU 5808 分治+背包
HDU 5852 LGV引理
HDU 5869 离线+并查集+树状数组维护区间种类数
HDU 6039 分类讨论+线段树
HDU 6042 多重背包计数+DP
HDU 6063 思路题
HDU 6070 二分+线段树
HDU 6074 并查集
HDU 6096 AC自动机
HDU 6208 后缀自动机SAM
HDU 6209 分数二分
HDU 6212 区间DP
HDU 6214 网络流
HDU 6216 数学+模拟
HihoCoder 1146 概率DP+树形DP
HihoCoder 1267 高斯消元
HihoCoder 1325 FhqTreap
HihoCoder 1457 广义后缀自动机SAM
HihoCoder 1462 动态点分治
HihoCoder 1526 DP
HihoCoder 1529 维护函数图像
HihoCoder 1636 区间DP+倍增DP
HihoCoder 1646 容斥
HNSDFZJX2017[1] D3T2 分层区间DP
HNSDFZJX2017[1] D3T3 贪心+树链剖分
HNSDFZJX2017[1] D4T1 思路题+拉格朗日插值
HNSDFZJX2017[1] D5T1 DP+概率+博弈论
HNSDFZJX2017[1] D6T3 线段树
LibreOJ 138 类欧几里得算法+伯努利数
LibreOJ 2323 搜索
LibreOJ 2324 贪心+DFS
LibreOJ 2325 概率DP+矩阵乘法
LibreOJ 2476 莫比乌斯反演+快速狄利克雷和
LibreOJ 2537 DP:线段树合并优化
LibreOJ 2538 DP:状态优化+组合数学
LibreOJ 2540 状压DP:状态优化
LibreOJ 2541 期望+容斥+NTT
LibreOJ 2542 树形DP:期望+minmax容斥
LibreOJ 2587 圆方树+树形DP
LibreOJ 6031 平方分割+莫队+后缀自动机SAM
LibreOJ 6039 DP+分治
LibreOJ 6041 后缀数组(SAMSA)+bitset
LibreOJ 6053 扩展埃氏筛
LibreOJ 6077 容斥+多重背包
LibreOJ 6173 哈希+后缀数组
LibreOJ 6259 有向矩阵树
LibreOJ 6271 矩阵树+DFT+单位根
LibreOJ 6300 期望+组合数学
LibreOJ 6301 插头DP+meet-in-the-middle
LibreOJ 6302 DP+线段树+单调队列
LibreOJ 6352 模拟
LibreOJ 6353 取对数+堆维护K优值
LibreOJ 6354 Dijkstra
LibreOJ 6355 斜率优化DP+凸包
LibreOJ 6387 哈希+思路题
LibreOJ 6388 FFT通配符匹配
LibreOJ 6392 数论+EXGCD
LibreOJ 6395 结论题+倍增+背包DP+构造
LibreOJ 6396 线段树+背包DP
LibreOJ 6397 分类讨论
Lonlife 1138 递推容斥系数
Luogu 1080 贪心+高精度
Luogu 1081 倍增+set
Luogu 1084 二分+贪心
Luogu 1979 BFS+Dijkstra
Luogu 2765 最小路径覆盖
Luogu 3357 费用流
Luogu 3377 左偏树
Luogu 3665 Kruskal+STL
Luogu 3768 莫比乌斯反演+杜教筛
Luogu 3959 状压DP+枚举子集
Luogu 3960 FhqTreap
Luogu 4714 数论+组合数学+Pollard-Rho+Miller-Rabin
Luogu P3733 线段树分治+线性基
Luogu P3863 离线+分块
POJ 1112 黑白染色+DP
POJ 1141 区间DP
POJ 1180 斜率优化DP
POJ 1845 积性函数+矩阵乘法
POJ 2014 模拟
POJ 2057 树形DP+贪心
POJ 2187 计算几何:旋转卡壳
POJ 2288 状压DP
POJ 2349 最小生成树
POJ 2594 传递闭包+最小路径覆盖
POJ 2931 超现实数
POJ 3114 SCC+SPFA
POJ 3133 插头DP+hashtable
POJ 3167 KMP+树状数组
POJ 3177 边双连通分量
POJ 3301 三分+计算几何
POJ 3728 树上倍增
SDJX[1] D1T1 欧拉回路+贪心
SDJX[1] D1T2 Hook定理
SDJX[1] D1T3 DP:思路题+线段树
SDJX[1] D2T2 多重背包+组合数
SDJX[1] D5T1 笛卡尔树+均摊分析
SDJX[1] D5T2 思路题+BFS
SDJX[2] D1T1 主席树
SDJX[2] D2T1 哈希+NTT
SDJX[2] D2T2 DP+ST表
SDJX[2] D3T1 容斥+斯特林数+NTT
SDJX[2] D4T1 可持久化平衡树
SDJX[2] D5T2 莫比乌斯反演+均摊分析
SDJX[2] D6T2 LCT维护虚边信息+矩阵乘法
SDJX[2] D7T3 CDQ分治
SDJX[3] D1T1 贪心+堆
SDJX[3] D1T2 行列式+左偏树
SDJX[3] D4T1 思路题+递归构造
SDJX[3] D5T2 扩展Lucas定理
SDJX[3] D7T1 点分治+ST表
SGU 125 爆搜+剪枝
SGU 198 计算几何:点与多边形位置关系+SPFA判负环
SGU 237 区间DP:字符串状态
SGU 303 计算几何:平面图最小左转法+最小割
SGU 421 堆维护K优值+高精度+哈希
SGU 470 欧拉路径+分类讨论
SPOJ APS2 扩展埃氏筛
SPOJ DIVCNT2 莫比乌斯反演
SPOJ DIVCNTK 扩展埃氏筛
SPOJ GPINTRI 思路题
SPOJ NUMOFPAL 回文自动机PAM
SPOJ PERIODNI 树形DP:笛卡尔树+组合数学
SPOJ QTREE6 LCT
SPOJ QTREE7 LCT维护虚边信息
SPOJ TSUM 生成函数+FFT
TopCoder 2451 计算几何:分类讨论
TopCoder 6758 思路题+部图染色
TopCoder 6766 结论题
TopCoder 6876 数位DP+矩阵乘法
TopCoder 7620 思路题+分类讨论
TopCoder 8404 最短路+博弈论
TopCoder 10238 数位DP+矩阵乘法
TopCoder 10265 DP:字符串状态+贪心
TopCoder 10308 计算几何:半平面交
TopCoder 10428 二分答案+贪心
TopCoder 10524 轮廓线DP
TopCoder 10566 循环节+DP
TopCoder 10664 DP:最短路+维护函数图像
TopCoder 10727 树形DP
TopCoder 10780 DP:期望+思路题+状态优化
TopCoder 10854 状压DP:状态优化+容斥
TopCoder 10902 DP:补集转化+历史最值DP
TopCoder 11133 结论题+二分+贪心
TopCoder 11213 DP:基于未来的DP
TopCoder 11223 容斥+组合数学
TopCoder 11351 单位根反演+数论
TopCoder 11608 容斥+组合数学+均摊分析
TopCoder 11895 meet-in-the-middle+FWT
TopCoder 12004 容斥+并查集+DFS
TopCoder 12141 meet-in-the-middle+背包DP+容斥+矩阵树
TopCoder 12143 二分+差分约束
TopCoder 12330 容斥+思路题+BFS
TopCoder 12418 最小割
TopCoder 12432 费用流
TopCoder 12543 树形DP+KM算法
TopCoder 13347 状压DP:容斥+枚举子集+倍增+FMT
TopCoder 13444 容斥+组合数学+斯特林数
TopCoder 13550 容斥+组合数学
TopCoder 13692 区间DP:组合数学
TopCoder 13708 霍尔定理
TopCoder 13717 思路题+组合数学
TopCoder 13731 DP
TopCoder 13968 DP:期望
TopCoder 14250 容斥+状压DP+枚举子集+NTT
TopCoder 14285 期望+FWT
TopCoder 14287 构造题:辗转相减+递归构造
TopCoder 14413 矩阵乘法
TopCoder 14648 DP
TopCoder 14676 树形DP
Tsinsen 1301 后缀自动机SAM+块状链表+手写bitset
UniversalOJ 11 直径性质+分类讨论
UniversalOJ 13 Trie
UniversalOJ 17 混合背包DP
UniversalOJ 19 反图+BFS
UniversalOJ 20 数论+数值哈希
UniversalOJ 30 圆方树+树链剖分+堆删除
UniversalOJ 33 点分治+平方分割
UniversalOJ 36 改造线性基+期望
UniversalOJ 37 容斥+状压DP+枚举子集
UniversalOJ 38 质因数压位+线段树
UniversalOJ 46 线段树
UniversalOJ 55 动态点分治+FhqTreap+替罪羊树
UniversalOJ 58 树上带修莫队
UniversalOJ 62 莫比乌斯反演
UniversalOJ 80 KM(BFS)
UniversalOJ 107 区间DP+斯坦纳树DP
UniversalOJ 121 矩阵+随机
UniversalOJ 129 平方分割+状压DP
UniversalOJ 132 DP+有源汇上下界最小流
UniversalOJ 147 模拟+贪心
UniversalOJ 149 DP
UniversalOJ 150 二分+树上差分
UniversalOJ 151 模拟+贪心+DP
UniversalOJ 164 吉利线段树
UniversalOJ 169 吉利线段树
UniversalOJ 184 分治+最短路
UniversalOJ 191 点分治+CDQ分治+凸包
UniversalOJ 195 LCT
UniversalOJ 198 斜率优化+凸包+线段树分治
UniversalOJ 206 鸽巢原理+交互题
UniversalOJ 207 LCT维护虚边信息
UniversalOJ 210 2-SAT+优化建图
UniversalOJ 218 主席树+线段树
UniversalOJ 220 hashtable+Tarjan割点
UniversalOJ 224 提答题
UniversalOJ 228 均摊线段树
UniversalOJ 261 DFS+树剖LCA
UniversalOJ 264 队列
UniversalOJ 265 状压DP
UniversalOJ 266 博弈论+线段树合并
UniversalOJ 273 结论题
UniversalOJ 276 点分治+FhqTreap
UniversalOJ 280 贪心+set
UniversalOJ 300 Lucas性质+枚举子集
UniversalOJ 311 期望+笛卡尔树DP
UniversalOJ 314 压位线段树
UniversalOJ 315 哈希+均摊分析+hashtable
UniversalOJ 316 概率DP+特征多项式+暴力多项式取模
UniversalOJ 326 计算几何+交互题
UniversalOJ 348 状压DP+枚举子集+FMT
UniversalOJ 349 交互题+动态点分治+替罪羊树
UniversalOJ 350 思路题
UniversalOJ 370 状压DP+枚举子集
URAL 1171 DP+爆搜
URAL 1223 DP
URAL 1267 状压DP:状态优化
URAL 1310 数位DP+高精度
URAL 1459 状压DP+矩阵乘法
URAL 1472 最小割+树形DP
URAL 1476 DP+组合数学+高精度
URAL 1526 DP:状态优化
URAL 1552 DP:状态优化
URAL 1570 背包DP
URAL 1627 矩阵树+辗转相除高斯消元
URAL 1655 区间DP
URAL 1696 Dilworth定理+DP+前缀和
URAL 1745 贪心+DP
URAL 1887 期望+状压DP
URAL 1960 回文自动机PAM
URAL 1965 贪心+DP
UVA 1011 DP+动态Dijkstra
UVA 1057 DP+最短路
UVA 1099 状压DP:状态优化+枚举子集
UVA 10531 插头DP+hashtable
UVA 10829 后缀数组+调和级数枚举
UVA 12235 DP:特殊状态
UVALive 7174 树上分块+BFS树链剖分
YALIJX2017[1] D2T3 维护莫比乌斯函数
YALIJX2017[1] D3T2 字典树+DFS
YALIJX2017[1] D3T3 DP
YALIJX2017[1] D6T2 DP+李超树
YALIJX2017[1] D6T3 凸包+可持久化栈
YALIJX2018[1] D13T1 树形DP+概率DP
YALIJX2018[1] D2T2 最小割
YALIJX2018[1] D3T3 哈希
YALIJX2018[1] D4T3 AC自动机+DP
YALIJX2018[1] D6T1 斯特林数+DP
YALIJX2018[1] D6T2 带修主席树
YALIJX2018[1] D8T1 DP+线段树
YALIJX2018[1] D8T3 贪心+STL
ZOJ 2125 插头DP+hashtable
ZOJ 2432 LCIS
ZOJ 3799 贪心+栈
ZROJ 22 DP
ZROJ 75 DP
ZROJ 76 计算几何:圆弧交
ZROJ 77 DP+平衡树维护凸包+贪心
ZROJ 78 树形背包+dsu-on-tree
ZROJ 79 并查集+二分
ZROJ 80 结论题+组合数学
ZROJ 82 DP
ZROJ 83 贪心+线段树
ZROJ 84 图论
ZROJ 85 DP
ZROJ 86 结论题+离线处理
ZROJ 87 结论题
ZROJ 88 树状数组
ZROJ 89 DP+组合数学
ZROJ 90 异或性质
ZROJ 91 DP
ZROJ 92 异或性质+组合数学
ZROJ 94 结论题
ZROJ 95 分类讨论
ZROJ 96 模拟+背包DP
ZROJ 105 DFS
ZROJ 106 DP
ZROJ 107 结论题+树状数组逆序对
ZROJ 121 思路题+博弈论
ZROJ 128 思路题+矩乘
ZROJ 129 贪心+ST表
ZROJ 138 欧拉回路
ZROJ 139 哈希+分块
ZROJ 144 计算几何:Minkowski和
ZROJ 145 期望+DP


扫描二维码即可在手机上查看这篇文章,或者转发二维码来分享这篇文章:


文章作者: Magolor
文章链接: https://magolor.cn/2018/07/22/2018-07-22-blog-02/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Magolor
扫描二维码在手机上查看或转发二维码以分享Magolor的博客