上篇文章,我们介绍了线段树的基本概念和单点更新、区间查询,今天,我们来接着上次的线段树问题继续深入研究。在解决线段树问题的过程中,我们会遇到要求修改区间中某一元素值的问题,当然也可能会遇到要求修改一段子区间所有值的问题--即区间更新问题。回忆一下上篇文章单点更新的方法是,由叶节点逐级向上进行更新,此 ...
分类:
其他好文 时间:
2017-09-17 01:36:05
阅读次数:
239
这场比赛全程心态爆炸…… 开场脑子秀逗签到题WA了一发。之后0贡献。 前期状态全无 H题想复杂了,写了好久样例过不去。 然后这题还是队友过的…… 后期心态炸裂,A题后缀数组理解不深,无法特判k = 1时的情况。 然后也没有心思读题了,心静不下来。 比赛题目链接 Problem B $ans = k( ...
分类:
其他好文 时间:
2017-09-11 22:51:56
阅读次数:
304
【算法】数学+线段树/树状数组 【题解】这题的问题在线段树维护gcd只能支持修改成一个数,不支持加一个数。 套路:gcd(a,b,c,d,e)=gcd(a-b,b-c,c-d,d-e,e),也就是所有数的gcd可以转化为所有差值和最后一个数的gcd。 那么只需要查询区间差值gcd和一个数。 对于区间 ...
分类:
其他好文 时间:
2017-09-10 19:46:26
阅读次数:
113
【BZOJ3779】重组病毒 Description 黑客们通过对已有的病毒反编译,将许多不同的病毒重组,并重新编译出了新型的重组病毒。这种病毒的繁殖和变异能力极强。为了阻止这种病毒传播,某安全机构策划了一次实验,来研究这种病毒。实验在一个封闭的局域网内进行。局域网内有n台计算机,编号为1~n。一些 ...
分类:
其他好文 时间:
2017-09-10 16:41:14
阅读次数:
170
线段树区间更新 区间查询~好久没写过线段树了 写挫了好几次了了了。。最后瞅了瞅题解才发现自己思路有些问题 ...
分类:
其他好文 时间:
2017-09-08 20:31:22
阅读次数:
180
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Descripti ...
分类:
其他好文 时间:
2017-09-06 00:33:43
阅读次数:
151
其实直到不久前都几乎不会用树状数组,请教了PPZ大佬之后终于懂了一点点。 然后小蒟蒻现在才知道了树状数组区间修改+区间查询的方法QAQ 传送门 Codevs 线段树练习3 //Twenty #include<cstdio> #include<cstdlib> #include<iostream> # ...
分类:
编程语言 时间:
2017-09-05 17:53:43
阅读次数:
156
oracle 数据库的 TO_CHAR 和 TO_DATE的一些用法总结做了一个功能是以起始时间和截止时间的区间为条件查询数据语句如下:SELECT createdtime FRoM noticeinfoWHERE noticeinfo.CREATEDTIME, 'yyyy-mm-dd' >= "T ...
分类:
其他好文 时间:
2017-09-05 14:41:33
阅读次数:
169
定义: 块状数组是基于分块思想的数据结构,较基于分治思想的数据结构如线段树、平衡树等效率较低,但通用性更强。在块状数组的基础上加以扩展,就可以得到块状链表。 原理: 普通数组在处理一些区间问题时,复杂度通常会退化至O(n)。一个朴素的想法就是将这个数组分为若干个子区间,同时维护这些子区间的统计值,如 ...
分类:
编程语言 时间:
2017-09-02 19:53:13
阅读次数:
168
1、hdu 1166 敌兵布阵(★☆☆☆☆) 题意:有n个营地,每个营地初始各有若干人,每次询问[l,r]营地的总人数,或者对某个营地加上或减去若干人数。 思路:线段树单点更新,区间查询 1 //线段树单点更新,区间查询 2 #include<iostream> 3 using namespace ...
分类:
其他好文 时间:
2017-09-01 14:36:54
阅读次数:
229