摘要: lca的定义不在过多解释, 代码如下: 树上叉分:用于树上两点以及之间的路径上各个点点区间修改: 例如:(x,y)之间路径上的点都加一,可以将x++,y++,lca(x,y)--,fa[lca(x,y)]--;最后统计各个点的权值即可. 阅读全文
posted @ 2019-07-03 13:00 逆天峰 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 并查集现在有了更深的理解,虽然仅能判断两个元素是否在一个集合,但却可以引申为2个元素有某种关系; 见题: 此题就可以用并查集维护多个关系,开3倍的数组,1倍代表自己,2倍的代表天敌,3倍的代表食物... 阅读全文
posted @ 2019-06-28 12:25 逆天峰 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 自己最烦二进制,但还是痛定思痛,耐心学着... 普通的数都是十进制,二进制便是逢2进一,我觉得它最大的用途就可以表示一系列的东西用于不用上,用则为1,不用为0,比如说四个物体,可以用1111表示,再把1111用十进制表示15,这样15就可以表示这一状态。 说从最基础的说起:一般的n个物体,用二进制表 阅读全文
posted @ 2019-06-26 12:47 逆天峰 阅读(400) 评论(0) 推荐(0) 编辑
摘要: KMP inline void get_next(char *a) { int n=strlen(a+1); next[1]=0; for(int i=2,j=0;i<=n;++i) { while(j>0&&a[i]!=a[j+1]) j=next[j]; if(a[i]==a[j+1]) ++j 阅读全文
posted @ 2019-06-14 12:46 逆天峰 阅读(115) 评论(0) 推荐(0) 编辑
摘要: inline ll kuaisu(ll x,ll y) { ll ans=1; while(y) { if(y&1) ans=(ans*x)%mod; y>>=1; x=(x*x)%mod; } return ans%mod; } 阅读全文
posted @ 2019-06-09 12:46 逆天峰 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 二分: 固定下二分的写法: 终止条件:l==r; 取mid=(l+r)/2; if(mid符合条件) r=mid; else l=mid+1; 也就是说这里把mid左边. 二分答案: 1:有n个书,每本书有其厚度,分成连续m组,求分成厚度的最大的一组的最小厚度? 典型的关键字:最大值最小(或最小值最 阅读全文
posted @ 2019-05-11 16:02 逆天峰 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 指数级枚举:1到n任意选取的所有方案数: #include<bits/stdc++.h> using namespace std; int n,a[1100],vis[1100],cnt,m; inline void dfs(int x) { if(x==n) { for(int i=1;i<=n; 阅读全文
posted @ 2019-05-09 13:38 逆天峰 阅读(473) 评论(0) 推荐(0) 编辑
摘要: #include<bits/stdc++.h> using namespace std; int n,a[10][10],vis[10],ans,b[10][10]; inline int read() { int x=0,ff=1; char ch=getchar(); while(!isdigi 阅读全文
posted @ 2019-05-04 13:27 逆天峰 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 见题: 很水的一题,数据范围太小,前缀和加爆搜就行. 可是还是想写正解,DP; 对于这类的二维DP,个人理解就是如果保存的从起点到终点的状态会被一些情况所中断,就要只考虑最下角的点所保存的点的状态,例如此题,我们可以保存以(i,j)为右下角的状态,以f[i][j]保存以(i,j)为最右下角的最大正方 阅读全文
posted @ 2019-04-21 21:47 逆天峰 阅读(932) 评论(0) 推荐(0) 编辑
摘要: kruskal是最小生成树的一种做法,即严格按照贪心思想将边从小到大排序,一个一个枚举能不能加入图中,知道生成一棵树,显然树为最小树。 鄙人觉得kruskal做法远不止如此,那种严格从小到大选边的做法还有大用途... 例题: 此题也是生成一棵树,只不过生成一颗树边的最大值减最小值最小的树。那就有点难 阅读全文
posted @ 2019-04-10 13:27 逆天峰 阅读(203) 评论(0) 推荐(0) 编辑
作者:逆天峰
出处:https://www.cnblogs.com/gcfer//