随笔分类 - 数据结构
摘要:思路:
1. 因为要对一个区间进行多种操作,特别是相补差和对称差的情况下,要对一个区间操作怎么办?
2. 区间的seg[] = 0, 1, -1,分别表示区间为空,有数据,两者兼有。lab[] = 0, 1 表示区间是否被标记,当seg[] = -1时才会有效(即不确定时)
3. 对区间的5中操作,其实标记主要是为了应对于取反的操作。也算是延迟的一种方式吧,大区间取反,虽然其中可能有0,1,-1,但是最终只是针对0,1取反的。
阅读全文
摘要:题意:
有一个墙,很长,有n个人在上面贴海报。问最后能看到的海报个数(没被完全覆盖的也算)
阅读全文
摘要:题意:
1~n的数字,每次对其中一段进行增加和查询操作
阅读全文
摘要:题意:
屠夫的钩子区间是1~n,每段可能由铜,银,金组成,价值分别为1,2,3,进行一系列的更新之后,求钩子的总价值。
阅读全文
摘要:题意:
n个人玩约瑟夫游戏,求第p个(p为=n的最大反质数)被踢的人的原始序号。
阅读全文
摘要:题意:
有n个人陆续来到一个队列里排队(插队),第i个来的人插入到pos[i]位置中,问最后的队列情况。
阅读全文
摘要:题意:
有h * w的黑板,其中有n个人要把1 * wi的报贴上去,贴的时候要满足尽量靠上&&靠左。
输出每次张贴位置的行号。
阅读全文
摘要:题意:
给定n个数,这n个数是 0 ~ n - 1 的一个组合。定义a1, a2, ..., an 中满足 i aj的数对(ai, aj) 为逆序数对。
阅读全文
摘要:思路:
线段树的基本操作:单点替换,区间最值
阅读全文
摘要:思路:
基本的线段树操作:单点更新,区间求和
阅读全文
摘要:题意:
一棵具有n个节点的树,一开始,每个节点上都有一个苹果。现在给出m组动态的操作:
(C,i)是摘掉第i个节点上面的苹果(若苹果不存在,则为加上一个苹果),(Q,i)是查询以第i个节点为根的子树有几个苹果(包括第i个节点)。
阅读全文
摘要:初识树状数组,确实是一种优美的数据结构,夹杂着很强的数学模型在里面。
http://poj.org/summerschool/1_interval_tree.pdf 这里已经说明的非常清楚。
http://dongxicheng.org/structure/binary_indexed_tree/ 这篇文章说的也是差不多的。
阅读全文

浙公网安备 33010602011771号