树状数组
Bill_Yang_2016
这个作者很懒,什么都没留下…
展开
-
[CQOI2006] 简单题 - 线段树/树状数组
题目描述有一个n个元素的数组,每个元素初始均为0。有m条指令,要么让其中一段连续序列数字反转——0变1,1变0(操作1),要么询问某个元素的值(操作2)。例如当n=20时,10条指令如下: 输入格式第一行包含两个整数n,m,表示数组的长度和指令的条数,以下m行,每行的第一个数t表示操作的种类。若t=1,则接下来有两个数L, R (L<=R),表示区间[L, R]的每个数均反转;若t=2,则接下来只原创 2017-02-05 18:29:21 · 915 阅读 · 0 评论 -
[HAOI2004] 数列 - 树状数组
题目描述一个简单的数列问题:给定一个长度为n的数列,求这样的三个元素ai, aj, ak的个数,满足ai < aj > ak,且i < j < k。输入格式第一行是一个整数n(n <= 50000)。 第二行n个整数ai(0 <= ai <= 50000)。输出格式一个数,满足ai < aj > ak (i < j < k)的个数。样例数据样例输入5 1 2 3 4 1样例输出6题目分析用树状数原创 2017-02-07 23:47:42 · 683 阅读 · 0 评论 -
[ZJOI2003] 密码机 - 树状数组
题目描述 一台密码机按照以下的方式产生密码:首先往机器中输入一系列数,然后取出其中一部分数,将它们异或以后得到一个新数作为密码。现在请你模拟这样一台密码机的运行情况,用户通过输入控制命令来产生密码。密码机中存放了一个数列,初始时为空。密码机的控制命令共有3种: ADD < Number > 把< Number >到数列的最后。 REMOVE < Number > 在数原创 2017-02-07 23:44:39 · 521 阅读 · 0 评论 -
[POJ3468] 区间操作 - 树状数组
题目描述给你N个整数A[1], A[2], … , A[N]。你需要处理两类问题: “C a b c”表示给A[a], A[a+1], … , A[b]之间的每个数都加上c(-10000≤c≤10000)。 “Q a b”求A[a], A[a+1], … , A[b]之间数字的总和;输入格式输入的第一行包含两个整数N和Q(1≤N,Q≤100000); 第二行包含N个整数Ai(-10^9≤Ai≤原创 2017-02-07 23:41:07 · 922 阅读 · 0 评论 -
[HDU3584] Cube - 三维树状数组
题目描述给定一个体积为N*N*N立方体,每个单位小立方体A[x,y,z]里有一个值,初始值全部为0,我们可以对立方体进行一下两种操作: 操作“Not”:改变A[i,j,k]=!A[i,j,k]。意思是改变A[i,j,k]的值,从0->1或者1->0。 (x1<=i<=x2,y1<=j<=y2,z1<=k<=z2)。 操作“Query”:询问A[i,j,k]的值。输入格式多组测试数据。对于每组测试原创 2017-02-07 23:36:37 · 476 阅读 · 0 评论 -
[HDU1556] Color the ball - 树状数组
题目描述N个气球排成一排,从左到右依次编号为1,2,3….N。每次给定2个整数a和b(a<=b),lele便为骑上他的“小飞鸽”牌电动车从气球a开始到气球b依次给每个气球涂一次颜色。但是N次以后lele已经忘记了第i个气球已经涂过几次颜色了,你能帮他算出每个气球被涂过几次颜色吗?输入格式每个测试实例第一行为一个整数N(N<=100000)。接下来的N行,每行包括2个整数a b(1<=a<=b<=N)原创 2017-02-07 23:33:18 · 421 阅读 · 0 评论 -
[POJ3321] Apple Tree 苹果树 - 树状数组
题目描述有一棵N个结点的树,一开始每个结点上都有一个苹果,每次有两种操作: (1)C x:如果x结点上有一个苹果,那么摘下它,否则x节点上会再生出一个苹果; (2)Q x:询问以x结点为根的子树中苹果的个数; 你要对于每个Q操作,输出对应的答案。 输入格式第一行为一个数N,表示树的结点个数,默认以1为根; 接下来N-1行,每行两个数Ui,Vi,表示一条树边; 然后一行是一个数原创 2017-02-07 22:37:24 · 576 阅读 · 0 评论 -
[POJ3067] Japan - 逆序对
题目描述Japan plans to welcome the ACM ICPC World Finals and a lot of roads must be built for the venue. Japan is tall island with N cities on the East coast and M cities on the West coast (M <= 1000, N <=原创 2017-02-07 22:30:45 · 286 阅读 · 0 评论 -
[POJ2299] Ultra-QuickSort - 逆序对
题目描述In this problem, you have to analyze a particular sorting algorithm. The algorithm processes a sequence of n distinct integers by swapping two adjacent sequence elements until the sequence is sorte原创 2017-02-07 22:26:47 · 362 阅读 · 0 评论 -
[POJ2481] cows - 树状数组
题目描述 农民约翰的奶牛们已经发现,越来越多的草沿山脊(看成是一个数轴)长的特别好。约翰有N头牛(编号从1到N)。每头奶牛都特别喜欢吃一定范围内的草(可能重叠)。这个范围可以看成是一个闭区间[S,E]。 例如两头牛cowi和cowj,它们喜欢吃草的范围分别为[Si,Ei]和[Sj,Ej]。如果Si<=Sj,Ej <= Ei且Ei-Si > Ej-Sj,我们就是cowi比cowj强壮。对于每头原创 2017-02-07 22:23:28 · 424 阅读 · 0 评论 -
[POJ2352] Stars 夜空星辰 - 树状数组
题目描述夜空中有N颗恒星(N≤100000),每颗恒星具有其坐标(x, y)(0≤x, y≤100000)。现在,天文学家要对这些恒星进行分类,分类的标准如下:对于任意一颗恒星S(x,y),如果存在k颗恒星,其x, y坐标均不大于S,则恒星S属于k类星。 如下图所示:第5颗恒星为3类星,这是由1、2、4三颗恒星均在其左下方而得出的,类似地第2、4两颗恒星为1类星,第3颗恒星为2类星。因此在这幅图中原创 2017-02-07 22:16:51 · 819 阅读 · 0 评论 -
[POJ2886] 谁得到最多糖果 - 反质数+线段树
题目描述有N个孩子顺时针坐成一个圆圈且从1到N编号,每个孩子手中有一张标有非零整数的卡片。第K个孩子先出圈,如果他手中卡片上的数字A大于零,下一个出圈的是顺时针第A个孩子。否则,下一个出圈的是逆时针第(-A)个孩子。第p个出圈的孩子会得到F(p)个糖果,F(p)为p的因子数。求得到糖果数最多的是哪个孩子及得到多少糖果。输入格式输入包含多组测试数据,每组测试数据的第一行为两个整数N(0 < N ≤ 5原创 2017-02-07 00:30:28 · 470 阅读 · 0 评论 -
[IOI 2001] 移动电话 - 二维树状数组
题目描述 假设第四代移动电话的收发站是这样运行。整个区域被分割成很小的方格。所有的方格组成了一个S*S的矩阵,行和列从0~S-1编号。每个小方格都包含一个收发站。每个方格内的开机的移动电话数量可以不断改变,因为手机用户在各个方格之间移动,也有用户开机或者关机。一旦某个方格里面开机的移动电话数量发生了变化,该方格里的收发站就会向总部发送一条信息说明这个改变量。 总部要你写一个程序,用来管理原创 2017-02-06 21:31:02 · 695 阅读 · 0 评论 -
[POJ2155] Matrix - 二维树状数组
题目描述给一个N*N的矩阵A,其中元素是0或1。A[i][j]表示在第i行第j列的数。最初时,A[i][j]=0(1<=i,j<=N)。我们以以下方式来改变矩阵,给定一个矩形的左上角为(x1,y1)和右下角为(x2,y2),我们对这个矩形范围内的所有元素进行“非”操作(如果它是一个’0’,那么变化为’1’,否则它变为’0’)。请你编写一个程序完成以下两种操作: 1. C x1 y1 x2 y2 (原创 2017-02-06 21:27:15 · 319 阅读 · 0 评论 -
[bsoj2521] 序列和 - 线段树/树状数组
题目描述给定一个初始值都为0的序列,动态地修改一些位置上的数字,加上一个数,减去一个数,然后动态地提出问题,问题的形式是求出一段数字的和。 规定: Add i d 表示将序列第i个数加上d; Sub i d 表示将序列中第i数减去d; Ask i j 询问序列i到j的所有数的和;输入格式输入文件的第一行两个整数:n m,分别表示序列的长度和有m条指令;第2行到第m+1行,都是上面原创 2017-02-05 18:23:22 · 402 阅读 · 0 评论 -
[2010福建] 五元组问题 - 树状数组
题目描述给定n个数字,组成数字串 A1, A2, …, An。 五元组{ i, j, k, s, t }满足以下两个条件: a) 1 ≤ i < j < k < s < t ≤ n b) Ai < Aj < Ak < As < At 例如,数字串{2, 1, 3, 4, 5, 7, 6}中,包含以下4个五元组{1, 3, 4, 5, 6}, {2, 3, 4, 5, 6}, {1,原创 2017-02-08 00:01:05 · 1214 阅读 · 0 评论