
树状数组
stargazer.
夜を穿つの
展开
-
【LOJ #2386】「USACO 2018.01 Platinum」Cow at Large(点分治 / 树状数组)
传送门不知道为什么lglglg题解里清一色只会用∑d=2m−1→1=2m−∑d\sum d=2m-1\rightarrow 1=2m-\sum d∑d=2m−1→1=2m−∑d容斥做法设mnleafu\mathit{mnleaf_u}mnleafu表示距点uuu最近的叶子节点的距离这个可以用脚dfsdfsdfs随便O(n/nlogn)O(n/nlogn)O(n/nlogn)做对于一个根的...原创 2020-04-26 22:07:50 · 847 阅读 · 0 评论 -
【Codeforces 571 D】 Campus(并查集 / dfs序 / 树状数组 )
传送门考虑这样的操作连出一颗森林于是先离线建出树来修改就是子树操作只需要对于每个询问找到该点上一个被覆成000的时间然后对时间区间询问即可复杂度O(nlogn)O(nlogn)O(nlogn)写的有点长,似乎有2k2k2k不到写完的(#include<bits/stdc++.h>using namespace std;#define cs const#define...原创 2020-04-11 00:05:43 · 342 阅读 · 0 评论 -
【Codeforces 547 E】Mike and Friends(Ac自动机 / 树状数组)
传送门不知道为什么会是div1Ediv1Ediv1E显然建出acacac自动机显然一个操作对应的就是l,rl,rl,r对应的所有串在trietrietrie上所有点加111然后询问failfailfail树上xxx对应位置的子树的和离线下来用树状数组维护即可#include<bits/stdc++.h>using namespace std;#define cs con...原创 2020-03-17 19:58:07 · 229 阅读 · 0 评论 -
【LOJ #2865】「IOI2018」狼人(Kruscal重构树+扫描线)
传送门一道披着交互题外衣的传统题题意就是在问从SSS出发,走编号[L,n][L,n][L,n]内能达的点和EEE出发,走编号[1,R][1,R][1,R]能达的点是否有交显然可以把两点最大/小值作为边权建两颗KruscalKruscalKruscal重构树倍增后就是在问两个子树是否有相同的叶子转到dfsdfsdfs序上就是对于2个排列[L1,R1],[L2,R2][L_1,R_1...原创 2019-12-18 21:40:35 · 235 阅读 · 0 评论 -
【BZOJ5394】【Ynoi2016】—炸脖龙(树状数组+广义欧拉定理)
传送门考虑广义欧拉定理直接暴力从左到右扫这样最多logloglog次模数就变成1了然后就没了注意快速幂的时候记一下取没取模每层不要乱取模,因为每次模数不一样复杂度O(nlog2n+p)O(nlog^2n+p)O(nlog2n+p)有点小卡空间#include<bits/stdc++.h>using namespace std;const int RLEN=1&...原创 2019-04-24 17:37:47 · 260 阅读 · 0 评论 -
【BZOJ3881】【Coci2015】—Divljak(Ac自动机+树状数组)
传送门相当于吗每次把TTT在AcAcAc自动机上跑把经过的所有点在failfailfail树上的祖先不重复的加一单点询问权值在AcAcAc自动机上走,把所有经过的点按照dfndfndfn排序把相邻两点的LcaLcaLca到根减一即可由于链加是O(log2n)O(log^2n)O(log2n)的转成单点加,子树求和可以做到O(nlogn)O(nlogn)O(nlogn)因为我AcAc...原创 2019-09-25 22:04:45 · 139 阅读 · 0 评论 -
【LOJ #6041】【雅礼集训 2017 Day7】—事情的相似度(后缀自动机+LCT+树状数组)
传送门暴力膜小明玩着自己的iphone 6siphone\ 6siphone 6s过河,不小心手机掉水里了。这时河神出来了,问小明:“你掉的是金iphoneiphoneiphone啊,还是银iphoneiphoneiphone啊”。小明很诚实的说自己的是普通的iphone 6siphone\ 6siphone 6s,于是河神拿了一个iphone&n...原创 2019-09-27 18:22:48 · 283 阅读 · 0 评论