![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
rain_falls
这个作者很懒,什么都没留下…
展开
-
LCA模板题
LCA原创 2017-02-24 21:00:26 · 653 阅读 · 0 评论 -
treap
比较快的非线性筛法for(int a=2;a<=n;a++) for(int b=a+a;b<=n;b++) not_prime[b]=true;O(nlogn)for(int a=2;a<=n;a++) if(!not_prime[a]) for(int b=a+a;b<=n;b++) not_prime[b]=true; //true不是质数O(nloglogn)原创 2017-10-30 11:07:41 · 259 阅读 · 0 评论 -
二分图匹配--绿色算法
匈牙利人神奇的算法 ——钟长者原创 2017-07-21 21:03:45 · 863 阅读 · 0 评论 -
数论板子
//筛法求MAXN范围以内的素数表,其中需要借用一个bool数组vis void prime_table() { int i,j; for(i = 2;i <= MAXN;i++) { if(!vis[i]) { prime[++cnt] = i; //cn转载 2017-10-21 19:09:35 · 579 阅读 · 0 评论 -
树状数组
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int n,m;int sum[500005];inline int lowbit (int x){ return x&-x;}int add (int k,int a){ whil原创 2017-10-21 16:21:10 · 135 阅读 · 0 评论 -
RMQ
#include<iostream>#include<cstdio>#define MAXN 100005using namespace std;int n,m;long long a[MAXN],d[MAXN][18];inline int read (){ int n=0; char ch=getchar(); while(ch<'0'||ch>'9') c原创 2017-10-20 18:58:14 · 129 阅读 · 0 评论 -
并查集
算法思路用于海量集合的合并及查询。 精髓在于路径压缩。 具体瞅代码##代码#include<iostream>#include<cstdio>using namespace std;#define MAXN 200001int f[MAXN];int m,n,x,y,q;int find1(int x)//非递归,不会爆栈,但很可能超时{ while(f[x]!=x)原创 2017-07-18 19:08:29 · 185 阅读 · 0 评论 -
二分算法
介绍 在一个单调(递增或递减)的区间[a1,an]中查找元素x,每次将区间分为左右长 度相等的两部分,判断解在哪个区间中并调整区间上下界,重复直至找到x。 复杂度O(lg n) 作用:查找元素是否存在(找出位置或值)求满足条件的最值。 算法原理 1 2 3 4 5 6 7 8 9 10 11 7 10 21 25原创 2017-07-18 19:44:30 · 207 阅读 · 0 评论 -
贪心
在NOIP中的贪心原创 2017-07-21 18:12:24 · 254 阅读 · 1 评论 -
线段树
今天来说线段树(虽然之前kmp的坑还没有填) 不管啦~开新坑原创 2017-03-03 21:40:30 · 194 阅读 · 0 评论 -
数据结构板子
树堆二叉堆堆排序RMQ(区间最值)#include<iostream>#include<cstdio>#define MAXN 100005using namespace std;int n,m;long long a[MAXN],d[MAXN][18];inline int read (){ int n=0; char ch=getchar(); while(原创 2017-10-21 19:59:27 · 293 阅读 · 0 评论