E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
——树状数组
洛谷NOIp热身赛题解
洛谷NOIp热身赛题解A最大差值简单
树状数组
,维护区间和、区间平方和,方差按照给的公式算就行了#include#defineilinline#definevdvoid#definemod1000000007typedeflonglongll
weixin_30527551
·
2018-11-08 10:00
数据结构与算法
树状数组
解析(转)
掌握
树状数组
~彻底入门先贴一下
树状数组
的模板代码:intlowbit(inti){returni&-i;//或者是returni-(i&(i-1));表示求数组下标二进制的非0最低位所表示的值}voidupdate
Doc-wu
·
2018-11-05 20:06
树状数组
线段树
树状数组
线段树和
树状数组
的区别假设数组长度为n。线段树和
树状数组
的基本功能都是在某一满足结合律的操作(比如加法,乘法,最大值,最小值)下,O(logn)的时间复杂度内修改单个元素并且维护区间信息。
DorisBao1021
·
2018-11-05 19:15
线段树
树状数组
线段树和
树状数组
的区别假设数组长度为n。线段树和
树状数组
的基本功能都是在某一满足结合律的操作(比如加法,乘法,最大值,最小值)下,O(logn)的时间复杂度内修改单个元素并且维护区间信息。
DorisBao1021
·
2018-11-05 19:15
求逆序对个数的三种方法(归并排序,
树状数组
,权值线段树)
求逆序对个数的三种方法逆序对:对于一个序列a1a_1a1,a2a_2a2,a3a_3a3…ana_nan,如果存在aia_iai>aja_jaj且iusingnamespacestd;constintmaxn=1e6+10;templatevoidread(T&res){charch=getchar();Tq=1;while(ch'9'){if(ch=='-')q=-1;ch=getchar();
Galaxy_yr
·
2018-11-02 20:13
算法与数据结构
洛谷3460 [POI2007]TET-Tetris Attack(贪心)(
树状数组
)
心路所以我就想排序后用
树状数组
维护编号,其它模拟就好,因为总步数才1000000,用并查集跳过删除的数字。
逐梦起航-带梦飞翔
·
2018-11-01 13:44
树状数组
刷题之路
贪心
HDU - 3966 Aragorn's Story (树链剖分+
树状数组
)
题目链接题目大意:给你一颗树,树上的每个结点有一个权值。一共有三种操作:(1)将结点u与v之间路径上的所有点的权值+x(2)将结点u与v之间路径上的所有点的权值-x(3)询问结点u的权值树链剖分入门题 #include usingnamespacestd; typedeflonglongll; constintN=5e4+10; inthead[N],nxt[Nsiz[son[u]])son[u]
jrltx
·
2018-10-31 00:00
树链剖分
树状数组
---区间更新(差分数组实现)
/**@Author:Achan*@Date:2018-10-2812:55:01*@LastModifiedby:Achan*@LastModifiedtime:2018-10-2819:59:13*/#include#include#include#include#include#include#include#include#includeusingnamespacestd;#defineX
Achanss
·
2018-10-28 20:59
树状数组
洛谷:P3950 部落冲突
本题不需要使用线段树,使用
树状数组
查询路径上是否有任意一段区间和不为0即可。代码#include#definelowbi
yyy2015c01
·
2018-10-28 20:00
ST表[学习笔记]
模拟赛求最值,要用二维ST表,可是我连一维都不会所以我写了个
树状数组
,然后跪了30分QAQ赶紧滚过来学一学,网上讲的好复杂QWQ概念ST表是用来求解区间最大值的一种优秀的离线算法,它可以O(nlogn)
AcerMo
·
2018-10-26 20:26
暴力-杂题
BZOJ3594&&洛谷P3287 [SCOI2014]方伯伯的玉米田
二维
树状数组
优化DP手动再见大毒瘤这样的出题人就是丧病n2n^2n2只有10分!!!讲一下思路不难发现,每次拔高,必定是从序列中某个地方直接拔高到序列末尾,为啥?
AcerMo
·
2018-10-23 19:31
数据结构-树状数组
动态规划
luogu2345 奶牛机会
树状数组
, O(n*logn)
#include #include #include #include usingnamespacestd; structCow{ longlongv,x; intid; }cow[20002]; intn;//cnt记录删点的个数 longlongsum_x[20002],cnt[20002],ans; boolcmp1(Cowa,Cowb){returna.xb.v;} voidadd(i
zaifengzhong52
·
2018-10-23 00:00
列队
题目https://www.luogu.org/problemnew/show/P3960思路
树状数组
做法:定义一行中原来的元素为初始时这一行前m-1m−1个元素中,没有离队过的元素。
CE自动机
·
2018-10-21 12:32
题解
HDU 6274 Master of Sequence(思维+
树状数组
+二分)
题意:给你n,m。接下来n个数,给出a[i]。再接下来n个数,给出b[i]。m次查询,每次查询:若id=1则给出xy把a[i]的值修改为y。若id=2则给出xy把b[i]的值修改为y。若id=3则给出k求,其中思路:求S(t)>=k最小的t显然是二分。注意S(t)这个式子。我们每次从1~n求的话,复杂度n*m会爆炸。注意一个诡异的数据范围:1=x的数字个数即可。同时预处理每个a[i]出现的次数,这
LSD20164388
·
2018-10-18 21:17
二分查找
线段树/树状数组
思维
二维
树状数组
几种模板
1.单点更新,区间查询inttree[N][N];//行列分开看,每一行每一列都是一个一维
树状数组
intn,m;//n行m列intlowbit(intx){returnx&(-x);}//单点更新,区间查询
baodream
·
2018-10-18 21:19
模板
免费的馅饼(二维偏序)(
树状数组
版)
https://vjudge.net/contest/261263#problem/B(题目链接)因为一秒可以走1或2步或不走。我们可以看成半秒走1步或不走。dp[i]表示接到第i块饼时最大的分数值现在有两块饼它们下落的时间为ti,tj,位置为pi,pj;假设ti>tj;只有ti-tj>=|pi-pj|时dp[j]可以转移到dp[i];当pi>pj时ti-tj>pi-pjti-pi>tj-pj;当
bluelanzhan
·
2018-10-18 10:24
noip训练
二维偏序
树状数组
洛谷3287 [SCOI2014]方伯伯的玉米田(DP)(
树状数组
)
题目方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。这排玉米一共有N株,它们的高度参差不齐。方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降序列。方伯伯可以选择一个区间,把这个区间的玉米全部拔高1单位高度,他可以进行最多K次这样的操作。拔玉米则可以随意选择一个集合的玉米拔掉。问能最多剩多少株玉米,来构成一排美丽
逐梦起航-带梦飞翔
·
2018-10-16 13:16
树状数组
刷题之路
动态规划DP
10/14训练日志
1.看了关于
树状数组
的一些知识,lowbit(),update(i,k),sum(x)等,看了有关的博客,有些题可以看懂,有的依然不明白为什么那样写,这样写为什么会产生这样的结果还是有点不理解,有待进一步深入的学习
sean(SunPeishuai)
·
2018-10-14 23:44
ACM开学训练日志
2018清北学堂武汉游记
Day0一大早就坐飞机到了武汉,去看了看,发现是笔记本,也不能先试试手,但感觉还行,时间还早就去黄鹤楼游了一圈,然后就回宾馆玩手机去了Day1早上的比赛果然还是令人疲累先看第一题,似乎可以用
树状数组
加sort
Dy_Dream
·
2018-10-14 10:42
游记
杂七杂八的
2018.06.29 NOIP模拟 排列(线段树)
这里介绍几种比较经典的做法第一种:二分+
树状数组
,这是理论上效率最不优秀的一种做法,然而由于
树状数组
的
SC.ldxcaicai
·
2018-10-11 23:53
#
线段树
树状数组
之区间更新与查询
具体思路:由于
树状数组
裸的模板只能通过数组求区间和,而对于区间的更新的查询无法实现,所以通过多个数组进行辅助。具体公式,通过三个数组实现。第一个数组记录第一组的前缀和。
Let_life_stop
·
2018-10-11 18:30
树状数组
Codeforces 341D Iahub and Xors (二维
树状数组
差分 推荐)
D.IahubandXorstimelimitpertest1secondmemorylimitpertest256megabytesIahubdoesnotlikebackgroundstories,sohe'lltellyouexactlywhatthisproblemasksyoufor.Youaregivenamatrixawithnrowsandncolumns.Initially,al
_TCgogogo_
·
2018-10-11 14:05
ACM
数据结构
算法题
ACM修炼指南(网上通用版 -----已修改格式方便查看)
文章目录----------目录----------点击进入bestsort个人版----------数据结构----------栈,队列,链表,树并查集平衡二叉树二叉排序树线段树
树状数组
字典树后缀数组
bestsort
·
2018-10-10 16:19
各类集合
【
树状数组
】Pascal山脉
【题目描述】小卡卡顺着老者所指的方向,来到了Pascal神峰的顶峰。老者告诉小卡卡,Pascal山脉有很多座山,都排在一条直线上,每座山都有不同的高度。Pascal山的山顶有一个神奇的洞穴,进入这个洞穴后,你将会到达这座山前方的另一座山,更加神奇的是,你到达的山一定比他所在的山高度要小。而Pascal圣地最大的宝藏就藏在某一座Pascal山上的洞穴中,这个洞穴的特点是它有一道石门封闭着。小卡卡很想
Dy_Dream
·
2018-10-09 22:05
数据结构
数据结构
树状数组
UVALive - 4329:Ping pong
Pingpong来源:UVALive标签:
树状数组
参考资料:相似题目:题目N(3≤N≤20000)pingpongplayerslivealongawest-eaststreet(considerthestreetasalinesegment
wingrez
·
2018-10-08 23:56
【记录】算法题解
线段树——求逆序数
题目:hdu1394MinimumInversionNumber逆序数:在数组a中,满足 且 的两个数个人感觉求逆序数用
树状数组
更方便一些,不过使用线段树也是可以的使用线段树求一个数组中逆序数的组数方法
AcTarjan
·
2018-10-08 22:18
数据结构
POJ - 2352:Stars
Stars来源:POJ标签:
树状数组
参考资料:相似题目:题目AstronomersoftenexaminestarmapswherestarsarerepresentedbypointsonaplaneandeachstarhasCartesiancoordinates.Letthelevelofastarbeanamountofthestarsthatarenothigherandnottoth
wingrez
·
2018-10-07 23:44
【记录】算法题解
各种姿势过【模板】单源最短路径(标准版)
洛谷P4779板子,堆优化+标记数组优化spfa魔改迪杰斯特拉堆优化+判断zkw线段树优化线段树优化
树状数组
优化左偏树优化,左偏树+回收节点优化小根堆优化加一个zkw线段树优化的板子---虽然我看不懂=
RevolIA
·
2018-10-07 22:44
模板类(什么
这也是模板)
SHOI2007 园丁的烦恼 离散化+
树状数组
传送门题目大意:多次询问矩阵和,无修改。n<=50000,m<=500000n<=50000,m<=500000n#include#includeusingnamespacestd;#definelowbit(x)((x)&(-x))constintMAXN=500001;intn,m;inttx[MAXN],ty[MAXN];intque[MAXN][4];intbx[M
DyingShu
·
2018-10-06 20:27
离散化
树状数组
初学树套树:线段树套Treap
前言树套树是一个十分神奇的算法,种类也有很多:像什么
树状数组
套主席树、
树状数组
套值域线段树、zkwzkwzkw线段树套vectorvectorvector等等。
chenxiaoran666
·
2018-10-06 12:20
线段树
平衡树
树套树
树状数组
区间修改 区间查询 讲解
博客目录废话不多说
树状数组
区间修改:数列值存在a[]里面,多建立个数组c1[],注意:c1[i]=a[i]-a[i-1]。
GreyBtfly_wbt
·
2018-10-05 16:41
树状数组
树状数组
详解
1.什么是
树状数组
?顾名思义,就是用数组来模拟树形结构呗。那么衍生出一个问题,为什么不直接建树?答案是没必要,因为
树状数组
能处理的问题就没必要建树。和Trie树的构造方式有类似之处。
Xenny
·
2018-10-03 14:00
HDU - 5877 Weak Pair (离散化+dfs+
树状数组
)
WeakPairTimeLimit:4000/2000MS(Java/Others)MemoryLimit:262144/262144K(Java/Others)TotalSubmission(s):5327AcceptedSubmission(s):1543ProblemDescriptionYouaregivenarootedtreeofNnodes,labeledfrom1toN.Tothe
hehedad
·
2018-10-01 23:32
图论
数据结构
Luogu p4514 上帝造题的七分钟 题解 二维
树状数组
题目链接裸体(题)就意味着身体(神题)标准全裸二维
树状数组
因为这道题二维线段树好像会爆空间,所以二维
树状数组
是最好的写法了二维
树状数组
十分的胡扯玄幻,通过一个乱七八糟二维的差分来实现二维区间快速修改查询
cz_wangjunpeng
·
2018-10-01 22:46
树状数组
2018.9.30 ~ 2018.11.1 做题记录
2018.10.1上午:参加模拟赛:T1:60pts乱搞T2.ACLostCowsPOJ-2182
树状数组
+二分T3:MLE0分下午:ACP2915[USACO08NOV]奶牛混合起来MixedUpCows
EM-LGH
·
2018-09-30 22:00
树状数组
2
问题描述已知一个数列,你需要进行下面两种操作:1.将某区间每一个数数加上x2.求出某一个数的值输入文件第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含2或4个整数,表示一个操作,具体如下:操作1:格式:1xyk含义:将区间[x,y]内每个数加上k操作2:格式:2x含义:输出第x个数的值输出文件
番薯夹islandfsj
·
2018-09-29 22:46
Codeforces Round #510 (Div. 2) A 模拟 B枚举 C D离散化+
树状数组
(逆序对)
ACode:#include#defineLLlonglong#defineINF0x3f3f3f3fusingnamespacestd;constintAX=1e5+66;inta[AX];intmain(){intn,m;scanf("%d%d",&n,&m);intx;intmm=m;intmaxn=0;for(inti=0;ia[i]){m-=(maxn-a[i]);}}if(m>0){m
Dave_L
·
2018-09-22 22:32
树状数组
【康托展开,高精度,二分答案,
树状数组
】
正题题目大意求n个数的全排列的第k个。解题思路首先康拓逆展开∑ii<=nxi(n−i)!\sum^{i<=n}_ix_i(n-i)!∑ii#include#definelobit(x)x&-x#defineN100010#definelllonglongusingnamespacestd;lla[N*2],n,t[N],l,mo[N];chark[N*2];voidchange(llx
ssl_wyc
·
2018-09-22 15:04
高精度
BZOJ5278&&洛谷P4375 [USACO18OPEN]Out of Sorts (金组)
智障(shang)题+
树状数组
维护前缀和我们定义一下冒泡排序的分割点,分割点i的定义就是在他左边的点的rank都小于等于i,右边的rank都大于等于i,也就是说一个分割点出现后,他左边的点不会再跑到右边定义
AcerMo
·
2018-09-17 15:19
排序
数据结构-树状数组
【Ural1028】【LOJ10114】【
树状数组
】数星星stars
传送门biu~#includeusingnamespacestd;inta[32002],n,b[32002];inlineintask(intx){intre=0;for(;x;x-=x&-x)re+=a[x];returnre;}inlinevoidadd(intx,inty){for(;x<=32001;x+=x&-x)a[x]+=y;}intmain(){intx,y;scanf("%d"
Ltb_Ckh1205
·
2018-09-15 16:56
树状数组
BZOJ2819 Nim
先求dfs序,转化成区间问题,然后用
树状数组
维护一下就好了,查询的时候,求一条x–>rt的Xor路径,再求一条y–>rt的Xor路径,Xor一下,发现lca(x,y)以上就没了,但是少了一个val[lca
AcerMo
·
2018-09-14 15:58
数据结构-树状数组
倍增LCA
树状数组
总结(单点修改 区间查询;区间修改 单点查询;区间修改 区间查询)
树状数组
一般有三种题型吧(1)单点修改区间查询这应该是最简单的一个了,不多说了#includeusingnamespacestd;#definemaxn1100#definelowbit(i)((i)&
curry___
·
2018-09-11 21:56
树状数组
Ryuji doesn't want to study (
树状数组
)
Ryujidoesn’twanttostudy(
树状数组
)Ryujiisnotagoodstudent,andhedoesn’twanttostudy.Buttherearenbooksheshouldlearn
一只二十四节气
·
2018-09-11 10:07
树状数组
2018ICPC徐州站网络赛 Ryuji doesn't want to study 思维+前缀和+
树状数组
做这道题让我对线段树和
树状数组
有了更深的理解。。主要是维护两个前缀和,一个a[i],一个(n-i+1)*a[i],最后结果减一下。剩下就是注意一些
树状数组
的操作更改了。
Cc_Sonia
·
2018-09-09 19:06
算法-线段树
树状数组
徐州赛区网络赛 Ryuji doesn't want to study(
树状数组
)
Ryujiisnotagoodstudent,andhedoesn'twanttostudy.Buttherearenbooksheshouldlearn,eachbookhasitsknowledgea[i]a[i].Unfortunately,thelongerhelearns,thefewerhegets.Thatmeans,ifhereadsbooksfromlltorr,hewillge
hehedad
·
2018-09-09 19:20
数据结构
树状数组
的原理与实现
树状数组
的作用实际上,
树状数组
算是线段树的小弟角色,
树状数组
能解决的问题线段树一定能解决,而线段树能解决的问题
树状数组
却不一定能解决。两者都是在区间进行操作,但是
树状数组
是不如线段树厉害的。
iwts_poi
·
2018-09-07 16:18
算法&数据结构
MicroRNA Ranking(Tehran2016)
题意:给出m个n的全排列,求一个n的全排列,满足对于in)中删除这个数依次循环,算的时间复杂度是0(k*n*n+n*n*log(n)),没想到超时了比赛结束后,改成用
树状数组
维护,AC....没想到STL
jadelemon
·
2018-09-06 20:00
Prefix Sum(
树状数组
维护k阶前缀和)
题目大意有k+1个长度为n的序列,记作a[k][n];a[0]为原始序列,a[i]为a[i-1]的前缀和,a[k]即为a[0]的k阶前缀和,例如:两种操作:1.0xy:原始序列单点加,即a[0][x]+=y;2.1x:求原始序列k阶前缀和的单点值,即a[k][x];1usingnamespacestd;typedeflonglongLL;constintMAXN=100010;constintmo
Hrbust_cx
·
2018-09-05 22:17
ACM算法
【算法模板】
树状数组
,手写留念~
额,大一暑假写的
树状数组
,翻出来存起来以后备用。
仰天长笑泪满衣
·
2018-09-03 19:48
数据结构
常用算法模板
Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) D. Array Restoration
从最大的数开始讨论如果最大的数中间有断开的地方,那么就需要从0里面选,把他填上需要使用
树状数组
#include#include#include#include#include#include#include
basasuya
·
2018-09-02 00:00
上一页
49
50
51
52
53
54
55
56
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他