博客园 首页 私信博主 显示目录 隐藏目录 管理 动画
摘要: 来自51nod的双倍经验题 公共祖先 : 题意: 给你两颗树,问你有多少对点(a,b,c)满足c在第一棵树中是(a,b)的公共祖先,在第二棵树中也是(a,b)的公共祖先 双重祖先:题意:给你两棵树,问你有多少对点(u,v)满足u在第一棵树种是v的祖先,在第二棵树种也是v的祖先 乍看一下好像不是很一样 阅读全文
posted @ 2019-08-01 11:18 gllonkxc 阅读(410) 评论(0) 推荐(0)
摘要: 题目大意:不带修,查询区间mex 做法:看这数据范围感觉可以$O(Nlog_2N)$或者是$O(N\sqrt N)$ 1.线段树(之所以不说是主席树,是因为并没有用到主席树那种用差分提出区间的操作) 查询[L,R]的话就是对第i棵线段树维护每个数字最后一次出现的位置,维护区间最小值,然后对值域[0, 阅读全文
posted @ 2019-07-30 11:25 gllonkxc 阅读(128) 评论(0) 推荐(0)
摘要: 题目大意:给一棵n个节点的树,每个点有一个权值$val_i$,m次查询,每次查询x的子树中第k大的节点的编号,权值不重复,且树以1为根。 做法:看起来就是一个查询区间第k大强行上树,于是dfs序做 1 #include<bits/stdc++.h> 2 using namespace std; 3 阅读全文
posted @ 2019-07-26 13:47 gllonkxc 阅读(141) 评论(0) 推荐(0)