- 博客(5)
- 收藏
- 关注
原创 浅谈线段树 Segment Tree
Part I.Introduction 线段树是一棵二叉树,其每个节点表示一个区间[a,b]。 若一个节点不是叶子节点,则其左儿子表示区间[a,mid],其右儿子表示区间[mid+1,r]。 由于这是一棵二叉树,我们可以采用一个数组记录一棵线段树。设某个节点数组下标为i,则其左儿子数组下标为i*2,右儿子数组下标为i*2+1。
2014-02-19 14:53:01 1436 2
原创 BZOJ 1798: [Ahoi2009]Seq 维护序列seq
题目地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1798题目大意:维护一个序列,提供区间加、区间乘、区间询问操作。算法讨论: 线段树模板题。 由于要处理加和乘2个操作,所以在下传标记时需要注意处理完整。我的做法是先处理乘标记,再处理加标记。处理乘标记时对其子节点的加、乘、答案标记都
2014-02-19 13:29:59 1106
原创 BZOJ 1012: [JSOI2008]最大数maxnumber
题目地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1012题目大意:维护一个序列,提供查询、插入操作.算法讨论:线段树的模板题.可以先预置一个[1,oo]的线段树,每次插入后将len++.其余操作和线段树相同.Code:/* * Problem:1012 * Author:PYC */
2014-02-19 12:43:47 716
原创 BZOJ 1000: A+B Problem
题目地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1000题目大意:输入a,b,输出a+b.关键字:/算法讨论:作为BZOJ的第一题,目的是让大家了解BZOJ的输入输出方式.由此题可以发现BZOJ的输入输出方式是标准输入输出(即不用文件输入输出).Code:/* * Problem:1000 * Author:
2014-02-19 12:09:08 1225
原创 Hello World!
#include using namespace std;int main(){ printf("Hello World!\n"); return 0;}Hello World!Welcome to Charlie Pan's Blog!---By Charlie PanFeb 19th,2014
2014-02-19 11:51:15 615
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人