POJ 3264 Balanced Lineup (线段树单点更新  区间查询)...
                            
                            
                                分类:
其他好文   时间:
2015-02-25 01:53:16   
                                阅读次数:
202
                             
                         
                    
                        
                            
                            
                                题目链接:http://hihocoder.com/problemset/problem/1080对于这种不止一个懒标记的线段树,只要弄清楚各种操作和各种懒标记间的关系就OK了。我的代码: 1 #include 2 3 using namespace std; 4 5 #define...
                            
                            
                                分类:
其他好文   时间:
2015-02-22 16:54:03   
                                阅读次数:
265
                             
                         
                    
                        
                            
                            
                                莫队,利用可以快速地通过一个问题的答案得到另一问题的答案这一特性,合理地组织问题的求解顺序,将已解决的问题帮助解决当前问题,来优化时间复杂度。典型用法:处理静态(无修改)离线区间查询问题。线段树也是处理区间问题的一个有力工具,它和莫队算法各有特点:线段树可以支持修改,并且单次操作时间复杂度一般为O(...
                            
                            
                                分类:
其他好文   时间:
2015-02-22 15:45:22   
                                阅读次数:
117
                             
                         
                    
                        
                            
                            
                                题目链接:http://hihocoder.com/problemset/problem/1078我的代码: 1 #include 2 #include 3 4 using namespace std; 5 6 #define MAXN 100005 7 8 int w[M...
                            
                            
                                分类:
其他好文   时间:
2015-02-22 13:20:15   
                                阅读次数:
148
                             
                         
                    
                        
                            
                            
                                hdu 1166 敌兵布阵
单点更新,区间查询和。
http://acm.hdu.edu.cn/showproblem.php?pid=1166
#define rd(x) scanf("%d",&x)
#define rd2(x,y)  scanf("%d%d",&x,&y)
#define rd3(x,y,z) scanf("%d%d%d",&x,&y,&z)
using namespa...
                            
                            
                                分类:
其他好文   时间:
2015-02-19 20:44:42   
                                阅读次数:
191
                             
                         
                    
                        
                            
                            
                                http://acm.split.hdu.edu.cn/showproblem.php?pid=5172官方题解 
一个区间是排列只需要区间和为len(len+1)2(len为区间长度),且互不相同,对于第一个问题我们用前缀和解决,对于第二个问题,预处理每个数的上次出现位置,记它为pre,互不相同即区间中pre的最大值小于左端点,使用线段树或Sparse Table即可在O(n)/O(nlogn)的...
                            
                            
                                分类:
其他好文   时间:
2015-02-15 18:12:15   
                                阅读次数:
161
                             
                         
                    
                        
                            
                            
                                今天来给大家讲下查询最常用但也是最复杂的where方法,where方法也属于模型类的连贯操作方法之一,主要用于查询和操作条件的设置。where方法的用法是ThinkPHP查询语言的精髓,也是ThinkPHP ORM的重要组成部分和亮点所在,可以完成包括普通查询、表达式查询、快捷查询、区间查询、组合查...
                            
                            
                                分类:
Web程序   时间:
2015-01-30 17:33:32   
                                阅读次数:
219
                             
                         
                    
                        
                            
                            
                                先复习一下今天刚学的RMQ算法知识;
RMQ算法(Range Minimum Query)
:1.算法思想
         求静态范围最值问题,适合于静态连续区间查询。
          A[ i ] [ j ] 的值代表的是原数组中以 i 开始的连续 (1
2.代码 
//2.1   预处理代码
for(int j = 1 ; j != 20 ; ++j )  //...
                            
                            
                                分类:
编程语言   时间:
2015-01-29 22:35:37   
                                阅读次数:
313
                             
                         
                    
                        
                            
                            
                                题意:N个工兵营地。工兵营地里的人数分别为:a1,a2,....aNAdd i,j:第i个工兵营地里增加j人Sub i,j:第i个工兵营地里减少j人Query i,j:查询第i个第j个工兵营地共有多少人思路:线段树、树状数组都可以做,看代码代码:线段树:const int maxn = 50005;...
                            
                            
                                分类:
其他好文   时间:
2015-01-25 19:26:36   
                                阅读次数:
172