![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
板子
Richard__Luan
这个作者很懒,什么都没留下…
展开
-
FFT高精度乘法
裸FFT走一波~~~#include <cmath>#include <queue>#include <cstdio>#include <cstdlib>#include <cstring>#include <iostream>#include <algorithm>using namespace s原创 2018-07-06 15:58:37 · 1232 阅读 · 0 评论 -
Bzoj【3262】陌上花开
传送门biu~CDQ分治第一题。。。上次集训还认为是大神的东西,没想到现在就学了。。。CDQ分治可以看做降维打击,大体思路是先把一段区间分为两部分,只考虑左半部分对右半部分的影响,常数小还好写,可以顶替复杂高级数据结构,只是必须离线AC Code#include<cstdio>#include<iostream>#include<algorith...原创 2018-08-03 20:04:28 · 186 阅读 · 0 评论 -
Manacher模板
还是一个很短很简单的模板~Ac Code#include<cstdio>#include<iostream>#include<cstring>using namespace std;int len;char s[11000005];char s2[22000005];int f[22000005];int edge=1;void re...原创 2018-07-22 17:12:17 · 288 阅读 · 0 评论 -
求割点
模板#include<cstdio>#include<iostream>#include<cstring>#include<vector>#define MAXN 100005#define MAXM 2000005using namespace std;int n,m;int dfn[MAXN],low[MAXN],st[MA...原创 2018-07-30 19:15:02 · 209 阅读 · 0 评论 -
求原根
今天学了数论。。。求原根真的好暴力 设模数为p 我们把p−1p−1p-1分解质因数,对于每一个2≤i≤p−12≤i≤p−12\leq i \leq p-1 ,判断an−1pi%pan−1pi%pa^{n-1 \over p_i} \%p 是否为1,如果是,那么这个数就不是原根,否则就是 AC Code#include&amp;amp;lt;cstdio&amp;amp;gt;#include&amp;amp;lt;iostre原创 2018-08-04 19:48:55 · 2067 阅读 · 0 评论 -
Treap模板 BZOJ【3224】
biu!门很高兴(能在有生之年)a掉treap代码调试太稳了,改了一个地方就A了没有什么调试的痕迹上代码@!!AC Code#include<cstdio>#include<iostream>#define N 100005using namespace std;struct Treap{ int l,r,key,size,w,rnd;...原创 2018-08-02 20:46:17 · 133 阅读 · 0 评论 -
BZOJ【2982】combination
Lucas 就当板子了 沙雕n==0 Bzoj过了loj无故re。。 Code#include&lt;cstdio&gt;#include&lt;iostream&gt;using namespace std;const long long mod=10007;int t;long long jc[20010];int n,m;long long njc[20010];...原创 2018-09-13 19:37:36 · 164 阅读 · 0 评论 -
奖金 拓扑排序
题目描述由于无敌的凡凡在2005年世界英俊帅气男总决选中胜出,Yali Company总经理Mr.Z心情好,决定给每位员工发奖金。公司决定以每个人本年在公司的贡献为标准来计算他们得到奖金的多少。 于是Mr.Z下令召开m方会谈。每位参加会谈的代表提出了自己的意见:“我认为员工a的奖金应该比b高!”Mr.Z决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位员工奖金最少为100...原创 2018-09-20 19:52:22 · 439 阅读 · 0 评论 -
manacher魔板
自己写一写吧。。。第二次复习这个知识点,觉得好多了就是维护一个最远的回文串,利用对称性,如果不符合对称就暴力,最多扩展n次,时间复杂度得以保证。Code(我觉得比上一次好)#include<cstdio>#include<iostream>#include<cstring>using namespace std;char a[11000005];...原创 2018-09-20 20:34:46 · 194 阅读 · 0 评论 -
矩阵乘法在oi中的应用
矩阵乘法最主要的作用就是用来优化dp了,对于一些求前n-k项和的操作,可以用矩阵乘法快速幂解决矩乘代码struct mat{ long long a[105][105]; mat operator *(const mat &amp;amp;x)const { mat f; for(int i=0;i&amp;lt;K;i++) for(int j=0;j&amp;lt;K;j++) { ...原创 2018-09-26 19:11:36 · 512 阅读 · 0 评论 -
中国剩余定理
&amp;nbsp;对于(s):{x≡a1(modm1)x≡a2(modm2)x≡a3(modm3)...x≡an(modmn)(s):\begin{cases}x\equiv a_1 &amp;amp;amp;(mod &amp;amp;amp; m_1) \\ x\equiv a_2 &amp;amp;amp;(mod &amp;amp;amp;m_2)\\ x\equiv a_3 &am原创 2018-11-05 14:17:56 · 195 阅读 · 0 评论 -
卡特兰数
1.另类递推公式:h(n)=h(n-1)(4n-2)/(n+1);2.另类通项公式:h(n)=C(2n,n)/(n+1)h(n)=C(2n,n)-C(2n,n-1)没啥必要放代码了…原创 2018-11-05 07:58:41 · 156 阅读 · 0 评论 -
组合数,Lucas定理
exgcd求逆元,O(1)求组合数#include&lt;bits/stdc++.h&gt;using namespace std;int n,a,b;const int mod=1000000007;long long jc[1000005];long long njc[1000005];long long exgcd(long long a,long long b,long lo...原创 2018-11-04 08:26:10 · 215 阅读 · 0 评论 -
逆元求法
本来不想写。。太水了第一种就是费马小定理,适用于p为质数且a不为p的倍数,则a的逆元就是 ap-2我一般用的是exgcd,好想,不用考虑上面的限制exgcd代码long long exgcd(long long a,long long b,long long &amp;amp;amp;x,long long &amp;amp;amp;y){ if(b==0) { x=1,y=0; return a; }...原创 2018-10-13 13:48:44 · 314 阅读 · 0 评论 -
快速读入(负数)
在算法时间复杂度很紧,输入量很大时,手动模拟输入是一种有效减少卡常几率的方法Code#include&lt;cstdio&gt;#include&lt;iostream&gt;using namespace std;int read(){ int x=0; int flag=1; char c=getchar(); while(c!='-'&amp;&amp;!(c&原创 2018-10-02 11:15:51 · 919 阅读 · 0 评论 -
trie树魔板
来补个坑,复习复习#include&lt;cstdio&gt;#include&lt;iostream&gt;using namespace std;int n;int son[100005][35];bool pd[100005];int edge=0;int ans;int main(){ cin&gt;&gt;n; string s; for(int i=原创 2018-09-21 20:06:11 · 178 阅读 · 0 评论 -
数论相关(noip级)
先复习复习noip的数论。。。反演什么的以后再说。。快速幂矩阵乘法(附带dp)exgcd欧拉函数,素数相关逆元原创 2018-11-05 14:22:45 · 294 阅读 · 0 评论 -
ac自动机模板
ac自动机是一种解决多模匹配的问题KMP+Trie树直接优化建成Trie图hdu2222#include<cstdio>#include<iostream>#include<cstring>#include<queue>using namespace std;int n;char s[55];int edge=0;i...原创 2018-07-21 16:20:18 · 151 阅读 · 0 评论 -
kmp模板
KMP是一种匹配算法,其优化了匹配过程,效率可以达到O(n+m)KMP有两个过程,第一个是求主串next数组,相当于自己匹配自己,求出最长公共前后缀第二个是把模式串放在主串上匹配求next数组memset(nxt,0,sizeof(nxt)); for(int i=1;i<b.length();i++) { int j=nxt[i]; while(j&&...原创 2018-07-21 14:13:35 · 139 阅读 · 0 评论 -
网络流dinic最大流板子 bzoj[1001]
传送门bzoj【1001】最小割最大流据说此题是对偶图最短路~~~最大流过了,就当是练网络流了吧代码如下#include<cstdio>#include<iostream>#include<queue>#include<cstring>using namespace std;int n,m;int fst[10000...原创 2018-07-12 08:54:23 · 357 阅读 · 0 评论 -
网络流最大费用流(传纸条)
#include<cstdio>#include<iostream>#include<queue>using namespace std;int m,n;int fst[10005];int nxt[100005];int v[100005];int k[100005];int d[10005];int b[10005];int cst[1...原创 2018-07-12 09:03:59 · 325 阅读 · 0 评论 -
网络流最小费用最大流(bzoj【1877】晨跑)
传送门板子一波~~#include<cstdio>#include<iostream>#include<cstring>#include<queue>using namespace std;int n,m;int fst[505];int nxt[100005];int v[100005];int k[100005];i...原创 2018-07-12 09:50:01 · 219 阅读 · 0 评论 -
Usaco4.2.2完美的牛栏 二分图最大匹配
裸题。。。直接放,当板子。Code#include<cstdio>#include<iostream>#include<cstring>using namespace std;int n,m;int fst[405];int nxt[20005];int v[20005];int b[405];int match[405];int edge;...原创 2018-07-13 08:54:47 · 208 阅读 · 0 评论 -
快速幂模板
存档。递归#include<cstdio>#include<iostream>using namespace std;long long n,m,p;long long dfs(long long m){ if(m==1)return n; if(m==2)return n%p*n%p; if(m==0)return 1; if(m%2==0)...原创 2018-07-19 08:57:54 · 177 阅读 · 0 评论 -
exgcd模板--noip2012同余方程
模板。。不过还是讲一下题目描述求关于x的同余方程 ax≡1(mod)b的最小正整数解。我们可以把这个方程转化一下,变成 ax+by=1因为 题目保证有解,所以a,b互质裸的exgcdAC Code#include<cstdio>#include<iostream>using namespace std;int a,b;int exgcd...原创 2018-07-19 09:12:37 · 259 阅读 · 1 评论 -
数论求各种数
板子一波!~~线性筛素数#include<cstdio>#include<iostream>using namespace std;bool a[60000005];int pre[3600000];int o=0;int n;int main(){ int n; cin>>n; for(int i=2;i<=n;i++)...原创 2018-07-19 09:30:29 · 256 阅读 · 0 评论 -
分块
模板(区间修改单点查询)#include<cstdio>#include<iostream>#include<cmath>using namespace std;int n;int a[1000005];int lazy[4000005];int bg[400005];int bel[400005];int p_blo;int sum[...原创 2018-07-25 09:36:51 · 187 阅读 · 0 评论 -
最小生成树
模板prim#include<cstdio>#include<iostream>using namespace std;int m,n;int fst[5005];int nxt[400005];int v[400005];int k[400005];int used[40005];int dis[40005];int edge;void a...原创 2018-07-19 14:30:38 · 114 阅读 · 0 评论 -
堆模板
我都觉得水《《》》#include<cstdio>#include<iostream>using namespace std;struct poi{ int a[1000005]; int size; inline void pushup(int num) { while(num>1&&a[num]<a[num/2])...原创 2018-07-19 16:18:43 · 143 阅读 · 1 评论 -
最短路算法
板子~~~Floydfor(int k=1;k<=n;k++) for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) { f[i][j]=min(f[i][j],f[i][k]+a[k][j]); }Floyd求最小环for(int k=1;k<=n;k++) { for(int i=1;i<...原创 2018-07-20 08:53:37 · 302 阅读 · 0 评论 -
LCA(倍增)
模板,,#include<cstdio>#include<iostream>#include<cstring>#include<algorithm> using namespace std;int t;int n;int fa[10005][20];int fst[10005];int nxt[10005];int vv[1...原创 2018-07-20 08:58:39 · 177 阅读 · 0 评论 -
树状数组
打一波数据结构的板子PS:既然都有线段树了为什么还要树状数组?因为它快啊~~跑不满log,可以有效防止卡常数但是太复杂的操作就不要用它了(其实区间修改区间查询也能用,只是操作太高深了,不如直接线段树,差不了太多)Code(兹磁单点修改区间查询))#include<cstdio>#include<iostream>using namespace st...原创 2018-07-20 09:06:17 · 112 阅读 · 0 评论 -
倍增rmq
ST表虽然不兹磁修改,但人家的查询可是O(1)的!特意写了一个Code#include<cstdio>#include<iostream>#include<cmath>using namespace std;int n,m;int a[200005];int f[200005][21];int mi[21];int main()...原创 2018-07-20 09:37:37 · 290 阅读 · 0 评论 -
DPDP插座DP
sjy插(座) 头DP是一种解决平面内回路问题的DP,一般用状压解决。不难思考,代码量巨多,分类讨论烦死人。代码(具体看注释)很详细了,看不懂的yy一下#include<cstdio>#include<iostream>#include<cstring>#define MAXN 300010using namespace std;int ...原创 2018-07-29 14:57:26 · 513 阅读 · 3 评论 -
线段树各种神操作
接下来就到了大名鼎鼎的线段树了!线段树是一种维护区间可加信息的数据结构传说中无所不能,神通广大的它到底有什么本事呢请看今日说法技能一 区间最大值 稀有程度 普通RMQ问题,是各种数据结构的裸题,也不一定非要用线段树做,常数很大,ST表显然是一个很好的选择但是就是一道练手题Code#include<cstdio>#include<iostrea...原创 2018-07-21 10:08:54 · 389 阅读 · 1 评论 -
计蒜蒟和魔板
求凸包+旋转卡壳#include<cstdio>#include<iostream>#include<algorithm>using namespace std;int n;struct poi{ int x,y;} a[1000005];int b[1000005];int o;int cj(int a,int b,int c,in...原创 2018-07-29 20:44:10 · 169 阅读 · 0 评论 -
类欧几里得算法
不写了,太长了,直接转载传送门写的非常好由于算法迭代方式和欧几里得算法差不多,所以又叫类欧几里得算法转载 2019-06-20 20:00:59 · 317 阅读 · 0 评论