POJ
csdn_Coder_T
这个作者很懒,什么都没留下…
展开
-
POJ1990
题意:FJ有n头牛,排在一条直线上(保证坐标不出现重复),另外每头牛还有一个自己的声音,如果i和j牛之间进行沟通,则需要两头牛的声音最低为max(vi,vj),消耗的体力为max(vi,vj)*(两头牛之间的距离),求所有牛进行沟通现消耗的体力 思路:建立两个树状数组维护坐标值小于等于x的牛有几条和坐标值小于等于x的牛的坐标和。先对v进行排序,按照顺序从小到大将声音为v的牛的信息插入到两个树状数原创 2017-10-15 22:31:13 · 337 阅读 · 0 评论 -
POJ4638
题意:给定n个数的序列,进行m次查询,求查询区间里的连续数段的个数 例:(1,3,5,4,2)查询区间[2,4]的连续序列个数为1 题解:利用树状数组来维护区间,其sum()函数求的值为从1位置到pos[v[i]]位置的连续序列的段数,每一个数组元素的值是表示v[i]这个数插入进树后对总的连续序列的个数的影响。在将位置为pos[v[i]]的数插入到树中时,和前面插入的数进行判断,如果前面原创 2017-10-15 22:31:49 · 199 阅读 · 0 评论