
树状数组
文章平均质量分 78
发奋屠强
这个作者很懒,什么都没留下…
展开
-
区间内出现某个数k次的数目问题
hdu4358 题意是给你一棵树,每个节点都有一个权值,问你某个节点及其子节点中权值出现k次的有多少个。 首先要想到把树转化为连续区间,先读取所有询问进行离线处理。把询问的子树转化成区间,按区间的右端点从小到大排序。然后从左到右循环整个区间每个值。假设当前循环到了第i个位置,这个位置的值为v,维护一个树状数组,树状数组中d位置的值就是区间[d,i]中出现k次的权值的种类,考虑到价值v的维护,记原创 2013-02-17 20:33:10 · 1776 阅读 · 0 评论 -
SPOJ 375. Query on a tree【树链剖分】
http://www.spoj.pl/problems/QTREE/ 给一颗树,每条边有一个权值。有两种操作:1、修改某条边的值;2、询问a、b两点路径上边权的最大值。 树链剖分。 #include #include #include #include using namespace std; #define maxn 100100 #define lson (pos<<原创 2013-09-17 11:07:54 · 3949 阅读 · 0 评论