排序:
默认
按更新时间
按访问量
RSS订阅

hdu 2665 Kth number(线段树+归并树+二分)

#include #include #include #include using namespace std; #define maxn 100005 #define maxd 21 struct seg{ int l,r,m; }tr[maxn<<2]; int s[ma...

2012-03-07 22:21:29

阅读数 852

评论数 0

hdu 1542 ,1255 线段树面积并与面积交

/* 在这里将一个一个的矩形分隔成两条平行X轴的线, 在下面一条标记为正边,上面一条标记为负边。 cnt表示的次节点被覆盖的次数。 sum表示区间一次覆盖以上的长度 len表示区间二次覆盖以上的长度 */ #include #include #include #include using name...

2011-12-15 21:27:06

阅读数 734

评论数 0

hdu1543 Paint the Wall

#include #include #include #include using namespace std; #define maxn 205 //自己写了一个cin的流输入,果断地WA,maxn最好大于150,因为之间重复可能大于100 int colors[maxn],n,m; ...

2011-12-06 19:16:47

阅读数 909

评论数 0

hdu 1556 初级线段树

#include #include #include #define Max 100005 #define mid (l+r)>>1 #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 using namespac...

2011-09-26 22:19:07

阅读数 695

评论数 0

poj 2528 Mayor's posters(区间涂色)

这个题目很多网上的解题报告都是错的, 但是交了可以AC。不过我还是仔细检查了一下,最后自己写了二天,很悲剧。 第一次是因为最后的查询区间的(1,k) 写成了(1,n)导致一直检查不出错误,但是从过程中又得到的是正确答案。 第二次是因为离散化,反正是相当的蛋疼。 做线段树已

2011-08-31 16:08:27

阅读数 432

评论数 0

poj3468 A Simple Problem with Integers

区间求和,区间更新。 需要覆盖区间,延迟处理。 void PushSub(int rt,int m){ if(color[rt]){ color[rt<<1]+=color[rt]; color[rt<<1|1]+= color[rt]; sum[...

2011-08-29 11:04:38

阅读数 345

评论数 0

hdu 1698 Just a Hook(成段更新)

color标记待更新,更新完标记为0; #include #define M 100005 #define mid (l+r)>>1 #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 int color[M&...

2011-08-27 22:14:45

阅读数 314

评论数 0

poj 2828 Buy Tickets(线段树)

(图画烂的一逼) 按照第一个题例数据来说。从后面开始插,正好能保证它就是在它最后的位置。 f表示的是这个区间还剩余多少个空位。 插入69时候,直接插在最后位置上,那么后面两个位置减去一。 然后更新空位。 大致思路就是这样。 #include #define M 2

2011-08-26 22:06:02

阅读数 512

评论数 0

hdu 2795 Billboard(线段树)

代码如下: #include #define mid (l+r)>>1 #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 #define M 200001 #define max(a,b) (a)>(b...

2011-08-26 12:19:59

阅读数 578

评论数 0

hdu 1394 最小逆序数(线段树版本)

从该数字num[i]就可以知道比它小的数有num[i]个,比它大的数有n-1-num[i]个.          每次把num[i]放到最后时,summ = summ – num[i] + n-1-num[i]; #include #define Min(a,b)

2011-08-24 21:24:25

阅读数 489

评论数 0

hdu 1754 (区间最大线段树基础题)

#include #define M 200005 #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 int Max[M<<2]; void Pushdata(int rt){ Max[rt] = Ma...

2011-08-24 17:34:16

阅读数 593

评论数 0

hdu 1166 敌兵布阵(线段树入门题)

#include #include #define M 50005 #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 int sum[M<<2]; void PushPlus(int rt){ sum[...

2011-08-24 16:31:32

阅读数 445

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭