题意是说给出一连串的展板,有10000000块。
然后要贴n (0
最后能看到多少个广告。
我的做法是 先离散化数据,然后构建线段树。然后查询。
不离散化那么 树所需要的空间就太大了。
注意这个样例
3
1 5
1 3
4 5
如果答案是3那么是错的。
因为每个点代表一块板。
而不是算两个数字之间的区间有没有被覆盖。
PS:貌似我的办法...
分类:
其他好文 时间:
2015-01-27 13:22:53
阅读次数:
125
知识点1:离散化对于这些区间来说,其实并不会在乎具体数值是多少,而是在他们的左右端点之间互相进行比较而已。所以你就把这N个区间的左右端点——2N个整数提出来,处理一下呗?你要注意的是,这2N个数是什么其实并不重要,你可以把这2N个数替换成为任何另外2N个数,只要他们之间的相对大小关系不发生改变就可以...
分类:
其他好文 时间:
2014-12-30 23:32:04
阅读次数:
237
将 x 轴上的点进行离散化,扫描线沿着 y 轴向上扫描每次添加一条边不断找到当前状态有效边的长度 , 根据这个长度和下一条边形成的高度差得到一块合法的矩形的面积 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std;....
分类:
其他好文 时间:
2014-12-28 23:24:32
阅读次数:
194
http://acm.hdu.edu.cn/showproblem.php?pid=5124Problem DescriptionJohn has several lines. The lines are covered on the X axis. Let A is a point which i...
分类:
其他好文 时间:
2014-12-05 22:37:09
阅读次数:
246
lines
Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 620 Accepted Submission(s): 288
Problem Description
John has several lines...
分类:
其他好文 时间:
2014-12-01 22:28:18
阅读次数:
279
题意:令a[l..r]都+1,求a[1..n]的最大值裸的成段更新+区间最值,但是本题坐标范围很大(10^9),所以需要离散化顺便离散化模板get 1 #include 2 #include 3 #include 4 #include 5 6 #define lson l, m...
分类:
其他好文 时间:
2014-11-29 22:54:57
阅读次数:
246
题目链接:
huangjing
题意:就是给出狠点建筑的坐标和高度,然后给出很多询问,求在这个坐标右下角的第k矮的建筑。。
思路:太弱了我,这个题目从上个星期天就开始看,但是一直不会,所以只能看别人思路,因为那个k小于10,所以左右节点只取前十就可以了,但是我觉得万一不记录完全万一发生丢失怎么办,后来一想sb了,如果左右节点都取前10的话,那么根节点得到的20个值,在排序必定取到了前10...
分类:
其他好文 时间:
2014-11-22 12:05:39
阅读次数:
156
一段长度未知的线段,一种操作:a b c ,表示区间[a,b]涂为颜色C,w代表白色,b代表黑色,问最终的最长连续白色段,输出起始位置和终止位置
离散化处理,和平常的离散化不同,需要把点化成线段,左闭右开,即对于一段区间[a,b],转化成区间[a,b+1)
#include "stdio.h"
#include "string.h"
#include "algorithm"
using n...
分类:
其他好文 时间:
2014-10-30 17:09:09
阅读次数:
226
题目大意:给出一些海报和贴在墙上的区间,问这些海报按照顺序贴完之后,最后能后看到多少种海报。
思路:区间的范围太大,然而最多只会有10000张海报,所以要离散化。之后用线段树随便搞搞就能过。
关键是离散化的方法,这个题我时隔半年才A掉,之前一直就TTT,我还以为是线段树写挂了。当我认为我自己的水平这种水线段树已经基本写不挂的时候又写了这个题,居然还是T。后来我对比别人的代码,才发现是我...
分类:
其他好文 时间:
2014-10-29 13:11:36
阅读次数:
226