随笔分类 - -----数据结构-----
摘要:4458: GTY的OJ【题目描述】 传送门【题解】 其实就是在树上做超级钢琴,用主席树维护这棵树,那么影响到这个节点x的状态只有fa[x],那么主席树就根据fa[x]转移到x,很好想,边界的判断要注意一下。 主席树维护树上前缀和的值,然后用堆取前m个...
阅读全文
摘要:4530: [Bjoi2014]大融合【题目描述】 传送门【题解】 我们需要维护两个值,子树的信息(W[])和虚儿子(a[])的信息。void PushUp(int x){if(x) W[x]=W[Son[x][0]]+W[Son[x][1]]+a[x]+1...
阅读全文
摘要:2049: [Sdoi2008]Cave 洞穴勘测【题目描述】 传送门【题解】 裸地link Cut Tree。最近刚学,所以打了一些模板题。代码如下#include#include#define MAXN 10005using namespace std...
阅读全文
摘要:2432. 「POI2014」代理商 Couriers【题目描述】 传送门【题解】 主席树套一下就可以了,这个值肯定在左子树或右子树中,所以挑一个大的递归,如果大的这棵子树还是小于一半,那么输出0。代码如下#include#include#define M...
阅读全文
摘要:1926: [Sdoi2010]粟粟的书架【题目描述】 传送门【题解】 这题肯定是让我们分类讨论的。 R,C≤200时,荣斥+二分查找: Val[i][j][k]" role="presentation">Val[i][j][k]Val[i][j]...
阅读全文
摘要:【题目描述】 传送门、【题解】 DSU板子,直接看我博客代码如下#include#include#define MAXN 100005#define LL __int64using namespace std;int n,AnsMax,a[MAXN];LL c,An...
阅读全文
摘要:DSU on tree首先感谢LX dalao的讲解。DSU on tree用于解决静态树上众数问题,比如说Codeforces 600E题目大意 给你一棵树,每个节点有一种颜色,问你每个子树x的颜色数最多的那种颜色,如果颜色数相同,那么种类数相加。输入样例1 4...
阅读全文
摘要:【题目描述】 传送门【题解】 其实就是树剖+线段树,线段树如何判断连续段数量,也就是在Lson和Rson合并时加一句判断,Lson有段和Rson左端是否相同,相同-1,否则不变。 然后LCA时也要记一下,判小心一点,就可以了。代码如下#include#inclu...
阅读全文
摘要:3236: [Ahoi2013]作业【题目描述】 传送门【题解】 莫队+树状数组,树状数组维护前缀和,这个做法有点笨,87秒勉强卡过。代码如下#include#include#include#include#define MAXN 100005#define MAX...
阅读全文
摘要:3585: mex【题目描述】 传送门【题解】 其实和BZOJ3339一模一样,当Ai>n时这个Ai对答案没有影响,这是肯定的,那么读入时处理一下就可以了。代码如下#pragma GCC optimize(2)#include#include#include#inc...
阅读全文
摘要:3339: Rmq Problem【题目描述】 传送门【题解】 一眼就是莫队题,但是答案有的难求,其实可以二分这个答案,然后check用树状数组。 树状数组求的是小于mid的这个数有几个,当然不算重复。 如果get(mid)==mid的话,那么表示从1到mi...
阅读全文
摘要:1803: Spoj1487 Query on a tree III【题目描述】 传送门【题解】 DFS序将树变成序列,然后用主席树维护就可以了。代码如下#include#include#include#define MAXN 100005using namespa...
阅读全文
摘要:1036: [ZJOI2008]树的统计Count【题目描述】 传送门【题解】 裸的树链剖分。代码如下#include#include#include#include#define MAXN 30005using namespace std;int n,m,a[MA...
阅读全文
摘要:树链剖分不知是谁想出的想法,太完美了,首先我大致讲一下树剖的想法。将树分成重链和轻链,使每条重链越长越好,每次可以用数据结构将重链上的所有节点求出或修改,达到优化的效果,下面我讲的是用线段树维护一棵树。当然不止是线段树可以维护,树状数组和Splay也可以。下面看一道题...
阅读全文
摘要:3524: [Poi2014]Couriers【题目描述】 传送门【题解】 主席树的裸题,要找出现次数大于一半的,那么他肯定出现在当前的左子树或右子树中,就这样查找就可以了。代码如下#include#include#include#define MAXN 50000...
阅读全文
摘要:2223: [Coci 2009]PATULJCI【题目描述】 传送门【题解】 主席树的裸题,要找出现次数大于一半的,那么他肯定出现在当前的左子树或右子树中,就这样查找就可以了。代码如下#include#include#include#define MAXN 300...
阅读全文
摘要:1901: Zju2112 Dynamic Rankings【题目描述】 传送门【题解】 带修改主席树模板。代码如下#include#include#include#include#include#define MAXN 10005using namespace s...
阅读全文
摘要:1628: [Usaco2007 Demo]City skylineTime Limit: 5 Sec Memory Limit: 64 MBDescription Input 第一行给出N,W 第二行到第N+1行:每行给出二个整数x,y,输入的x严格递增,并...
阅读全文
摘要:1626: [Usaco2007 Dec]Building Roads 修建道路Time Limit: 5 Sec Memory Limit: 64 MBDescription Farmer John最近得到了一些新的农场,他想新修一些道路使得他的...
阅读全文
摘要:1602: [Usaco2008 Oct]牧场行走Time Limit: 5 Sec Memory Limit: 64 MBDescription N头牛(2#include#includeusing namespace std;int n,Q,D...
阅读全文

浙公网安备 33010602011771号