这题那时怎么想就是想不出来……而且今晚没有多大状态,自己都晕了……一题没做出来……
baoge解释好久才懂……唉……线段树,树状数组用得还是不够熟啊……
WA了二发,才知道二分错了,二分好久不用,老是出错了现在……
#include
#include
#include
#include
#define sca(a) scanf("%d",&a)
#define mem(a,b) memset...
分类:
其他好文 时间:
2014-05-15 03:30:49
阅读次数:
223
给了你n,然后n个数字在一个数组中,接下来m个询问,每个询问三个数字 t,x,y,若t==0,那么修改区间[x,y]的每一个值,变为原来每个位置上的数 开根号取整,若t==1,那么对区间[x,y]求和
由于n,m,很大,所以树状数组铁定超时,若直接用线段树来做区间修改,那么也是超时,这类题目没别的方法了,静心剪枝,发现题目给的数据范围为2^63,有没有发现,2^63开根号 绝对不需要开1...
分类:
其他好文 时间:
2014-05-12 23:01:59
阅读次数:
479
HDU 1394 Minimum Inversion Number (数据结构-线段树)
题目大意:
求逆序数。也就是给你一个序列,每次求逆序数,然再把第一个数放到这个序列的末尾,构成新的序列。问你这n个序列的最小的逆序数。
解题思路:
1、对于每个序列,其原来的逆序数记为 pre , 如果当前把该序列 第一个数 a[0] 移动到尾部,那么新序列的逆序数为 pre-a[i]+(n-a[i]-1)
因为序列中比a[i]大的数有 n-a[i]-1 个,比a[i]小的有 a[i]个。
因此只需求出...
分类:
其他好文 时间:
2014-05-12 07:07:01
阅读次数:
301
题意:给你一个长度数列,再给你m个询问(一个区间),问你在这个区间里面有多少个数与其他的数都互质。解题思路:你看这种类型的题目都可以肯定这是
离线+树状数组(线段树)。主要就是他的更新信息。这里我的处理是先把1-200000(每个数的范围)数里面所有的质因子求出来。然后从后往前遍历数组。会出现以下几...
分类:
其他好文 时间:
2014-05-11 14:58:56
阅读次数:
288
刚开始做的时候用线段树做的,然后就跳进坑里了……因为要开方,所以区间的值都得全部变,然后想用lazy标记的,但是发现用不了,单点更新这个用不了,然后就不用了,就T了。然后实在不行了,看了别人的题解,原来是用树状数组+并查集的方法,唉……没想到啊!
因为开方之后多次那个数就会变成1了,所以是1的时候开方下去就没用了。树状数组更新的时候就把其更新的差更新即可,太机智了这题……
昨天做了,然后出错找...
分类:
其他好文 时间:
2014-05-09 22:35:22
阅读次数:
290
半个月时间终于把那些杂七杂八的学完了,虽然学完也,也只是有了个模板,自己手敲还是不太行,所以现在开始要疯狂刷题了!!!!!!
这题裸的树状数组,以前写那道《敌兵布阵》的时候写过,所以写得还挺快的吧。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include...
分类:
其他好文 时间:
2014-05-08 04:12:54
阅读次数:
420
转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents
Problem Description
N(3<=N<=20000) ping pong players live along a west-east street(consider the street as a line segment).
Each playe...
分类:
其他好文 时间:
2014-05-07 08:33:20
阅读次数:
334
minimum inversion number:最小逆序数Minimum Inversion
NumberTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K
(Java/Others)Total Submission(...
分类:
其他好文 时间:
2014-05-07 00:43:39
阅读次数:
469