码迷,mamicode.com
首页 > 其他好文 > 详细

二维线段树模式

时间:2014-08-09 18:30:18      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   os   io   div   log   

 

 1 #include<iostream>
 2 using namespace std;
 3 const int N=3000;
 4 struct SubNode
 5 {
 6     int left,right;
 7     int value;
 8 }
 9 struct Node
10 {
11     int left,right;
12     SubNode subnode[N];
13     int value;
14 }
15 Node node[N];
16 int left,right;//要使用区间的左右端点 
17 void Sub_build(int l,int r,int i,int t)//头节点的i=0; 
18 {
19     node[t].subnode[i].left=l;
20     node[t].subnode[i].right=r;
21     node[t].subnode[i].value=0;
22     if(l==r)return;//以点作为基本单位,每个叶子是一个点 
23     //if(l+1==r)return//以边作为基本单位,每个叶子是一条长度为1的边
24     int mid=(l+r)>>1;
25     Sub_build(l,mid,2*i+1,t);
26     Sub_build(mid+1,r,2*i+2,t);
27     //Sub_build(mid, r,2*i+2,t);
28 }
29 void Main_build(int l,int r,int i)//i从零开始 
30 {
31     node[i].left=l;
32     node[i].right=r;
33     node[i].value=0;//相应的值 
34     Sub_build(left,right,0,i);
35     if(l==r)return;
36     if(l+1==r)return;
37     int mid=(l+r)>>1;
38     Main_build(l,mid,2*i+1);
39     Main_build(mid+1,r,2*i+2);
40     //Main_build(mid,r,2*i+2);
41 }
42 void query(int l,int r,int left,int right,int i)
43 {
44     //按照条件寻找相应的值 
45     
46 }

 

二维线段树模式,布布扣,bubuko.com

二维线段树模式

标签:style   blog   color   使用   os   io   div   log   

原文地址:http://www.cnblogs.com/sytu/p/3901198.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!