树状数组
来源:互联网 发布:王者荣耀网络延迟460 编辑:程序博客网 时间:2024/05/16 15:10
好像没啥好讲的
求sum-lowbit
修改+lowbit;
二维和一维差不多。。
Code :
一维:
function lowbit(x:longint):longint;beginexit(x and (-x));end;procedure add(x,data:longint);beginwhile (x<=n) dobegininc(c[x],data);x:=x+lowbit(x);end;end;function sum(x:longint):longint;beginsum:=0;while x>0 dobegininc(sum,c[x]);x:=x-lowbit(x);end;end;procedure main;beginreadln(n);for i:=1 to n dobeginreadln(a[i]);add(i,a[i]);end;end;
二维:
var c:array[0..1100,0..1100] of longint; m,a,b,x,y,i,j,k,n:longint;function lowbit(x:longint):longint;begin exit(x and (-x));end;procedure add(x,y,data:longint);var y0:longint;begin y0:=y; while (x<=n) do begin y:=y0; while (y<=n) do begin inc(c[x,y],data); y:=y+lowbit(y); end; x:=x+lowbit(x); end;end;function sum(x,y:longint):longint;var y0:longint;begin y0:=y; sum:=0; while (x>0) do begin y:=y0; while (y>0) do begin inc(sum,c[x,y]); y:=y-lowbit(y); end; x:=x-lowbit(x); end;end;
0 0
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- 树状数组
- cocos2dx-sprite的用法
- First Date
- RelativeLayout常用属性介绍
- cocos2dx之音乐滑动开关
- 【我的安卓开发之路】一日目:创建工程,进入xml
- 树状数组
- bzoj 1721: [Usaco2006 Mar]Ski Lift 缆车支柱
- hdu2795-Billboard(经典线段树)
- developer.biao.daily.20140901
- C C++ TDD 相关书籍推荐
- 蓝牙广播数据 Android L Preview 当前效果
- expect 中的回车和换行
- 动态代理简例
- gic的逻辑划分:distributor与cpu interface