树状数组
文章平均质量分 80
ACM_Ted
正在加油的火箭。
展开
-
【树状数组】 poj3321 Apple Tree
Apple Tree 题目:http://poj.org/problem?id=3321 题意:一棵有n个结点的树,初始时每个结点都有一个苹果,之后有m个操作,C操作:如果x结点有苹果,执行操作后x结点无苹果;如果x结点没有苹果,执行操作后x结点出现苹果。Q操作:问x结点及其子树上一共有多少苹果。 题解:单点更新,区间查询,一看就是线段树类型的题目。但是这个是树形结构,需要转换成线性的才能计原创 2012-08-19 14:04:10 · 748 阅读 · 0 评论 -
【树状数组】 poj2299 Ultra-QuickSort
Ultra-QuickSort 题目:http://poj.org/problem?id=2299 题意:给n个数字,每次只能交换相邻两个数字,问最少需要交换多少次可以将n个数字从小到大排序 题解:可以通过模拟冒泡排序发现,对于每个数字,要把它交换到排序后对应的位置,交换次数就等于它的逆序数,即题目等价于求逆序数。 逆序数定义:在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数原创 2012-08-19 11:37:27 · 781 阅读 · 0 评论 -
【树状数组】 poj2352 Stars
Stars 题目:http://poj.org/problem?id=2352 题意:在一个二维数组中统计某个等级星星的个数,星星的等级为不比此星星高且不在它右边范围内的星星个数。 题解:因为输入的数据已经排序,只要一边接收输入一边计算等级即可。 代码: #include #include using namespace std; int a[15005],c[32010]; #原创 2012-08-19 10:57:46 · 594 阅读 · 0 评论