![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
可持久化数据结构
文章平均质量分 81
BraketBN
这个作者很懒,什么都没留下…
展开
-
【BZOJ3261】最大异或和【可持久化Trie树】
Trie维护序列前缀异或和,然后贪心找就可以啦。#include const int maxn = 600005, maxd = 26, maxnode = maxn * maxd;int n, m, bin[maxd], num[maxn], son[maxnode][2], sum[maxnode], root[maxn], triecnt;inline int ire原创 2016-02-27 18:54:00 · 396 阅读 · 0 评论 -
【SPOJ-COT】Count on a tree【主席树】【LCA】
【题目链接】同【BZOJ2588题解】除过不强制在线,都是一样的。/* Pigonometry */#include #include using namespace std;typedef long long LL;const int maxn = 100005, maxnode = 2000005;int n, m, tot, num[maxn],原创 2016-04-07 16:59:44 · 643 阅读 · 0 评论 -
【BZOJ2588】Spoj 10628. Count on a tree【主席树】【LCA】
【题目链接】同【SPOJ-COT题解】就是强制在线了。RE了快半年,终于AC了。读入优化那里要开LL,但是返回int。(我也不知道为什么)/* Pigonometry */#include #include using namespace std;typedef long long LL;const int maxn = 100005, maxnode =原创 2016-04-07 17:00:06 · 495 阅读 · 0 评论 -
【BZOJ3524】[Poi2014]Couriers【主席树】
【题目链接】比较裸的主席树,注意下标不要手滑写错了。/* Pigonometry */#include #include using namespace std;const int maxn = 500005, maxnode = 10000005;int n, m;int son[maxnode][2], sum[maxnode], segcnt, root[原创 2016-04-07 22:20:11 · 335 阅读 · 0 评论 -
【BZOJ4397】[Usaco2015 dec]Breed Counting【前缀和】【或莫队】【或线段树】【或可持久化线段树】
【题目链接】数据结构学多了,看到题解发现3个前缀和就搞定了。弱智+2另外也可以线段树,也可以3个主席树。。。莫队:/* Telekinetic Forest Guard */#include #include #include using namespace std;const int maxn = 100005, maxsqrtn = 316;i原创 2016-05-25 19:01:00 · 516 阅读 · 0 评论 -
【BZOJ3653】谈笑风生【主席树】【DFS序】
【题目链接】发现每次询问其实相当于,问dfs序在一段区间内,深度在一段区间内的点的贡献是多少,这个是经典的二维矩形求和的问题。因为数据比较大,考虑用主席树来维护这个信息。我们用主席树维护深度,权值为贡献,然后按DFS序加点进去,最后区间查询就可以了。/* Telekinetic Forest Guard */#include #include #include u原创 2016-05-02 09:39:56 · 522 阅读 · 0 评论 -
【CodeChef-XRQRS】Xor Queries【可持久化Trie / +主席树】
【题目链接】有中文题面就不发题意了。似乎维护一个可持久化Trie和一个主席树就可以做了,但是仔细想想好像只需要一个可持久化Trie就完了。脑补了一下Trie上找第k大和统计数个数,似乎是对了。1A了。。/* Pigonometry */#include #include #include using namespace std;const int ma原创 2016-04-22 08:27:24 · 973 阅读 · 0 评论 -
【BZOJ4546】codechef XRQRS【可持久化Trie / +主席树】
【题目链接】早上刚在CC上做了,中午就被人搬到BZOJ了。。不知道为什么n开50wRE,开了52w卡了下内存就过了。【CC上这题题解】/* Pigonometry */#include #include #include using namespace std;const int maxn = 520005, maxk = 21, maxnode = maxn原创 2016-04-22 14:57:18 · 1055 阅读 · 0 评论