这题可以用线段树离散化做,用二维树状数组做了一下,不懂得可以看一下这篇文章:http://www.java3z.com/cwbwebhome/article/article1/1369.html?id=4804
题意:
给你一个s*s的正方形区域,先输入一个x,若x==0,则再输入一个s,若x==1,则输入x,y,a,表示矩阵中(x,y)这点的值加上a,若x==2,输入l,b,r,t,...
分类:
其他好文 时间:
2014-07-22 23:03:12
阅读次数:
263
有两种方法吧,一个是利用了树状数组的性质,很HDU1556有点类似,还有一种就是累加和然后看奇偶来判断答案
题意:给你一个n*n矩阵,然后q个操作,C代表把以(x1,y1)为左上角到以(x2,y2)为右下角的矩阵取反,意思就是矩阵只有0,1元素,是0的变1,是1的变0,Q代表当前(x,y)这个点的状况,是0还是1?
区间修改有点特别,但是若区间求和弄懂了应该马上就能懂得:...
分类:
其他好文 时间:
2014-07-22 23:02:53
阅读次数:
225
Increasing Speed LimitsTime Limit: 2000/10000 MS
(Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s):
481Accepted Submission(s):...
分类:
其他好文 时间:
2014-05-07 18:28:10
阅读次数:
475
题意:两两相邻的元素可以交换,问最小交换次数使得数列为升序。
思路:归并排序分治法。看到琦神又用了树状数组的方法求。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define P...
分类:
其他好文 时间:
2014-05-07 08:54:01
阅读次数:
488
Disharmony TreesTime Limit: 2000/1000 MS
(Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s):
663Accepted Submission(s): 307Prob...
分类:
其他好文 时间:
2014-05-05 10:16:18
阅读次数:
486
敌兵布阵Time Limit: 2000/1000 MS
(Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s):
37773Accepted Submission(s): 15923Problem Desc...
分类:
其他好文 时间:
2014-05-02 14:22:52
阅读次数:
303
题意给了你N头牛,每头牛的强壮值是一个区间[s,e],如果第 i 头牛比第 j 头牛强壮那么必须满足 Si Ej - Sj;
为了满足这三个条件我们进行排序,先以e降序排为先决条件,若e相等则让s升序排列,如此即可满足三个条件,这道题目任意两头牛的强壮值区间有可能完全一样,这样就不需要重新用树状数组求一次和了,直接赋值即可,这样可以省很多时间,因为已经排序处理了,所以即便区间相等的 肯定就是...
分类:
其他好文 时间:
2014-04-29 13:26:21
阅读次数:
323
中文题目,很简单的题目,区间求和,当然对于线段树来说也很水,为了练习一下树状数组,多做做水题吧,加深理解,并且打好基础,我算是被没打好基础给吓坏了,宁可多花几个小时 刷刷水题扎实点,
很裸的题目 操作也很裸,了解树状数组的肯定能做
#include
#include
#include
#include
#include
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2014-04-29 13:12:22
阅读次数:
198
这题就是给了你三种操作,
1:往容器中一个元素 x
2::把容器中的元素x删除
3:查询比 x大的第k个数
想法:添加元素跟删除元素 直接是以数本身为序号然后以 value值为1和-1即可,相当于计数,至于找比x第k个大的数,那就看看当前往后数k个数的第一个数是哪个就可以了,一开始直接找出来,然后往后暴力的扫了一遍,结果错了,没关系,反应很快,直接改了个二分查找,然后就过了,弄清...
分类:
其他好文 时间:
2014-04-29 13:11:21
阅读次数:
326