树状数组
文章平均质量分 77
translata
这个作者很懒,什么都没留下…
展开
-
CodeForces 276E Little Girl and Problem on Trees 树状数组
题意:一棵树只有一个顶点,然后由这个顶点引申出多条单链,对于输入 0 v x d,代表把距离V节点距离在d以内的所有节点增加x,对于输入 1 v,代表查询v节点的值; 解题:对根节点和根节点的所有孩子节点建一棵树状数组,树状数组下标为深度,用前缀和表示每个节点的值,在单个节点更新变化,即如在(2,5)区间加5,则位置2要+5,位置6要-5; 然后要考虑是否跨根的情况,如果跨根原创 2016-02-27 15:34:12 · 329 阅读 · 0 评论 -
51nod 1376 最长递增子序列的数量 树状数组
数组A包含N个整数(可能包含相同的值)。设S为A的子序列且S中的元素是递增的,则S为A的递增子序列。如果S的长度是所有递增子序列中最长的,则称S为A的最长递增子序列(LIS)。A的LIS可能有很多个。例如A为:{1 3 2 0 4},1 3 4,1 2 4均为A的LIS。给出数组A,求A的LIS有多少个。由于数量很大,输出Mod 1000000007的结果即可。相同的数字在不同的位置,算作不同的,原创 2016-02-27 16:14:51 · 537 阅读 · 0 评论