``` #include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>

#define lson l, m, rt << 1
#define rson m + 1, r, rt << 1 | 1
#define lc rt << 1
#define rc rt << 1 | 1

using namespace std;

;

struct node
{
int l, r;
};

node D[MAXN];
int limit, Q;
];
];
int N;
int X[MAXN];

void build( int l, int r, int rt )
{
maxi[rt] = lazy[rt] = ;
if ( l == r ) return;
;
build( lson );
build( rson );
return;
}

void PushUp( int rt )
{
maxi[rt] = max( maxi[lc], maxi[rc] );
return;
}

void PushDown( int rt )
{
if ( lazy[rt] )
{
lazy[lc] += lazy[rt];
lazy[rc] += lazy[rt];
maxi[lc] += lazy[rt];
maxi[rc] += lazy[rt];
lazy[rt] = ;
}
return;
}

void update( int L, int R, int l, int r, int rt )
{
if ( L <= l && r <= R )
{
lazy[rt] += ;
maxi[rt] += ;
return;
}
PushDown( rt );
;
if ( L <= m ) update( L, R, lson );
if ( R > m )  update( L, R, rson );
PushUp( rt );
return;
}

int query( int L, int R, int l, int r, int rt )
{
if ( L <= l && r <= R )
{
return maxi[rt];
}
PushDown( rt );
;

;
if ( L <= m ) res = max( res, query( L, R, lson ) );
if ( R > m )  res = max( res, query( L, R, rson ) );
PushUp( rt );
return res;
}

int Bin(int key,int n,int X[]) {
, r = n - ;
while (l <= r) {
;
if (X[m] == key) return m;
;
;
}
;
}

int main()
{
int T;
scanf( "%d", &T );
while ( T-- )
{
scanf( "%d", &Q );
;
N = ;
; i < Q; ++i )
{
int u, v;
scanf( "%d%d", &u, &v );
if (v>N) N=v;
D[i].l = u, D[i].r = v;
X[nnd++]=u;
X[nnd++]=v;
}
//build( 1, N, 1 );
//for (int i=0;i<Q;i++)
//    update( D[i].l, D[i].r, 1, N, 1 );

sort(X , X + nnd);
;
; i < nnd; i ++) {
]) X[m ++] = X[i];
}
; i >  ; i --) {
] + ) X[m ++] = X[i-] + ;
}
sort(X , X + m);
build(,m-,);
; i < Q ; i ++) {
int l = Bin(D[i].l, m, X);
int r = Bin(D[i].r, m, X);
update(l, r , , m - , );
}

//int ans = query( 1, N , 1, N, 1 );
,m-,,m-,);
printf( "%d\n", ans);
//update( D[i].l, D[i].r, 1, N, 1 );
}
;
}```

## hdu5124 线段树+离散化的更多相关文章

1. POJ 2528 Mayor&#39;s posters(线段树+离散化)

Mayor's posters 转载自:http://blog.csdn.net/winddreams/article/details/38443761 [题目链接]Mayor's posters [ ...

2. poj 2528 Mayor&#39;s posters（线段树+离散化）

/* poj 2528 Mayor's posters 线段树 + 离散化 离散化的理解: 给你一系列的正整数, 例如 1, 4 , 100, 1000000000, 如果利用线段树求解的话,很明显 ...

3. [poj2528] Mayor&#39;s posters (线段树+离散化)

线段树 + 离散化 Description The citizens of Bytetown, AB, could not stand that the candidates in the mayor ...

4. [UESTC1059]秋实大哥与小朋友（线段树, 离散化）

题目链接:http://acm.uestc.edu.cn/#/problem/show/1059 普通线段树+离散化,关键是……离散化后建树和查询都要按照基本法!!!RE了不知道多少次………………我真 ...

5. poj 2528 Mayor&#39;s posters 线段树+离散化技巧

poj 2528 Mayor's posters 题目链接: http://poj.org/problem?id=2528 思路: 线段树+离散化技巧(这里的离散化需要注意一下啊,题目数据弱看不出来) ...

6. BZOJ_4653_[Noi2016]区间_线段树+离散化+双指针

BZOJ_4653_[Noi2016]区间_线段树+离散化+双指针 Description 在数轴上有 n个闭区间 [l1,r1],[l2,r2],...,[ln,rn].现在要从中选出 m 个区间, ...

7. POJ2528Mayor&#39;s posters[线段树 离散化]

Mayor's posters Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 59683   Accepted: 17296 ...

8. HDU 3743 Frosh Week （线段树+离散化）

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3743 Frosh Week Time Limit : 2000/1000ms (Java/Other) ...

9. 【HDU 1542】Atlantis（线段树+离散化，矩形面积并)

求矩形面积并,离散化加线段树. 扫描线法: 用平行x轴的直线扫,每次ans+=(下一个高度-当前高度)*当前覆盖的宽度. #include<algorithm> #include<c ...

## 随机推荐

1. Daily Scrum Meeting ——FourthDay(Beta)12.12

一.Daily Scrum Meeting照片 讨论界面优化详情 二.Burndown Chart 项目有条不紊地进行中... 1.新增6个界面修改计划 2.修复两个BUG 三.项目进展(check- ...

2. p2p网贷平台设计简析

以我之前主持开发的一个商业产品:p2p网贷为例进行分析.整个的概况,可以参见:www.huixinp2p.com(目的只会技术交流) 界面可以直接参考前期博客:http://www.cnblogs.c ...

3. javascript之聊天室（单机）来自于冷的锋刃

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

4. php中include()和require()的区别

1.引用文件方式 对 include()来说,在include()执行时文件每次都要进行读取和评估:而对于require()来说,文件只处理一次(实际上,文件内容替换 了require()语句.这就意 ...

5. Linux内核分析 第二周

Linux内核分析——完成一个简单的时间片轮转多道程序内核代码 张潇月+<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-100 ...

6. OGNl和ValueStack的基础和深入分析

一.OGNL 1)什么是OGNL? 解析:OGNL是Object Graph Navigation Language(对象图导航语言)它是强大的表达式语言. 2)用途:通过简单一致的表达式语法来读取和 ...

7. html 出现的错误

1.HTML页面为什么设置了UTF-8仍然中文乱码 用记事本写,保存后在网页上运行出现了乱码,换成GB2312能正确显示中文 代码没有问题,问题就出记事本身上. <meta charste=&q ...

8. 6-05使用SQL语句删除数据

删除数据语法: DELETE  FROM 表名  WHERE  删除条件. TRUNCATE  TABLE 表名. --[1]基本删除,省略WHERE条件,将删除表中的所有数据 DELETE FROM ...

9. comms.nottingham.ac.uk/learningtechnology

http://comms.nottingham.ac.uk/learningtechnology/

10. 【转载】DataGridView 使用集合作为数据源，并同步更新

原文地址:http://hi.baidu.com/netyro/item/7340640e36738a813c42e239 今天做项目时遇到一个挠头的问题,当DataGridView的数据源为泛型集合 ...