这个题非常有意思的地方是,我们发现区间[1,4]和[5,8]是紧挨着的,因为这个的数代表的是一段区间,原本我们对于普通的离散, a[1]=1,a[2]=5,a[3]=6,a[4]=8;数组下标就是重新离散的位置,但是a[2]和a[3]明显不重叠,为此我们需要重新考虑离散的内容,其实不妨这样,如果区间 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-30 00:20:14   
                                阅读次数:
150
                             
                    
                        
                            
                            
                                链接:https://vjudge.net/problem/HDU-3038#author=0 题意: 给出N和M 有M次记录,以l,r,v给出,表示l-r区间和为v问,有多少是错误的答案。 思路: 带权并查集。 sum[i] 表示i到F[i]的和。 代码: ...
                            
                            
                                分类:
其他好文   时间:
2019-01-21 21:09:04   
                                阅读次数:
135
                             
                    
                        
                            
                            
                                D. Petya and Array 题目链接:https://codeforces.com/contest/1042/problem/D 题意: 给出n个数,问一共有多少个区间,满足区间和小于t。 题解: 假设目前区间右端点为r,左端点为l,那么由前缀和可得知:sumr-suml-1<t,然后我们 ...
                            
                            
                                分类:
编程语言   时间:
2019-01-20 13:44:01   
                                阅读次数:
183
                             
                    
                        
                            
                            
                                    题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3个整数, ...
                            
                            
                                分类:
编程语言   时间:
2019-01-19 16:19:37   
                                阅读次数:
203
                             
                    
                        
                            
                            
                                    线段树原理 线段树是一颗二叉树,他的每个节点对应的都是一个区间,主要是通过对区间的分割和合并来修改节点的值, 然后再得到答案。 现在给你一个 目的为求区间和 所造出来的线段树 线段树。如下图所示。 仔细观察,第一二三行方框内的值是他的下面2个子区间的和, 第四行的方框内的数字代表的是自身的值, 蓝色 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-16 22:46:41   
                                阅读次数:
185
                             
                    
                        
                            
                            
                                    一个有 $n$ 个元素的序列,区间和定义为 $S(l,r) = \sum_{i=l}^r A_i$ ( $l \le r$ ),求可能的不同区间和的值的数量。 数据范围 $A_i=1$ 或 $A_i=2$ , $n \le 10^5$ 。 输入格式 第一行是一个整数 $n$ ,接下来一行是空格间隔的 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-15 00:41:01   
                                阅读次数:
191
                             
                    
                        
                            
                            
                                    Description 我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H L+1)^N种方案。小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次最大公约数,以便进一步研究。然而他很快发现工作量太大了,于是向你寻求帮助。你的任务很简单,小z会告诉你一个 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-14 11:04:43   
                                阅读次数:
152
                             
                    
                        
                            
                            
                                    题目 简单题,前缀和方法 乍一看就觉得应该用前缀和来做,一个数组多次查询。 实现方法: 新建一个private数组prefix_sum[i],用来存储nums前i个数组的和, 需要找区间和的时候直接通过prefix_sum[j]-prefix[i-1]即可得到从[i,j]区间的和,当i是0的时候需要 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-03 21:41:18   
                                阅读次数:
199
                             
                    
                        
                            
                            
                                    操作0、1:区间赋值 操作2:区间异或 操作3:区间求和 操作4:区间最长连续段 我们用线段树打lazy标记的方式维护:某段区间从左向右和从右向左延伸的0和1的长度、某段区间内0和1的最长长度、区间和。 然后分类讨论pushdown与pushup即可 cpp include"cstdio" incl ...
                            
                            
                                分类:
其他好文   时间:
2019-01-01 21:43:43   
                                阅读次数:
186
                             
                    
                        
                            
                            
                                这道题挺神仙的,毕竟这个异或是需要进位的 看到区间和我们很自然的就想到了前缀和 于是处理一下前缀和答案就变成了这个样子 $$⊕\sum_{i=1}^n\sum_{j=1}^{i}pre_i pre_{j 1}$$ 众所周知异或是应该按位处理的,但是这里是减法,所以还有进位需要处理 瞬间就感觉没有办法 ...
                            
                            
                                分类:
其他好文   时间:
2019-01-01 21:13:32   
                                阅读次数:
158