
树状数组
文章平均质量分 82
Veda_
这个作者很懒,什么都没留下…
展开
-
poj 3321 Apple Tree
题目大意:有一棵苹果树,有n个节点,根节点为1,最开始每个节点上都有一个苹果。有连个操作(C) 如果节点X上有一个苹果,拿走这个苹果;如果X上没有苹果,这个节点立刻长出一个苹果(Q) 求以X根的子树(包括X)一共有多少个苹果。这题主要运用了树状数组更新时候的思维。首先按照原树在树状数组上建一棵树,使得原树的子节点紧跟在根节点之前,并记录以该节点为根的子树的节点的数目原创 2013-03-29 16:41:36 · 601 阅读 · 0 评论 -
hdu 3450 Counting Sequences
题目大意:给一个序列,从中选m (m>=2)个组成一个子序列(顺序和原序列相同),使得子序列中相邻两项的差的绝对值不超过k.求这样所有子序列的数目。基本算法是dp,先不考虑m>=2 , 先求出所有符合相邻差的绝对值不超过k的子序列的数目,然后减去n 就是结果。基本dp,最开始dp数组初始化为1 ,表示以第i个数为结尾的满足要求的子序列的个数,最开始单个数看作一个序列按原创 2013-03-29 17:36:40 · 601 阅读 · 0 评论 -
hdu 2852 KiKi's K-Number
题目大意:给你一个队列,里面有三种操作。(0 ) 往队列里压入一个值为 X 的数 (1 ) 从队列里弹出一个值为 X 的数,如果没有,输出 “No Elment!” ,如果有,弹出这个数。(如果队列中有多个x ,只弹出一个) ( 2 ) 找出队列里比a 大的第k个数。如果有,输出这个数的值 ,如果没有,输出“Not Find!”树状数组,num[x] 记录x原创 2013-03-29 16:10:19 · 594 阅读 · 0 评论