随笔分类 -  ACM_树状数组

摘要:单点更新,区间求最值(也可以用线段树)图:http://baike.baidu.com/picview/1420784/1420784/0/55a628d10b98f02b9a50276e.html#albumindex=0&picindex=0#include<stdio.h>#include<string.h>int n,num[200009],p[200009];int max(int a,int b){ return a>b?a:b;}int lowbit(int t){ return t&(-t);}void change()//找最大值 阅读全文
posted @ 2013-04-15 13:02 宛如 阅读(216) 评论(0) 推荐(0)
摘要:树状数组的应用一:单点更新,区间求和http://baike.baidu.com/view/1420784.htm设节点编号为x,那么这个节点管辖的区间为2^k(其中k为x二进制末尾0的个数)个元素int Lowbit(x){ return x&(-x);}如:x =1: 1 &-1(设位数为8)0000 0001 & 1111 1111 = 1x = 6:6 & -6 0000 0110&1111 1010 = 2总结一下,其实就是:求出2^k(其中k: x 的二进制表示数中, 右向左数第一个1的位置),如6的二进制表示为110,向左数第零个为0,第一 阅读全文
posted @ 2013-04-15 12:56 宛如 阅读(161) 评论(0) 推荐(0)