这道题,很自然的想到了用离散化和成段更新。。
离散化有2中方式写。。详见代码。。
然后成段更新虽然没有lazy因为写的途中发现并不需要。。
然后,我实在不知道discuss里面大家说的关于数据的问题,可能自己的这个程序也会有错误的吧。。然后尝试着用树的节点保存颜色数目,,, 但是没实现。。然后是乱七八糟的代码。。#include
#include
#incl...
分类:
其他好文 时间:
2016-05-07 10:08:11
阅读次数:
275
http://poj.org/problem?id=2528 一种更节省空间的版本,省去了hash数组,因为已经排序了,所以可以二分查找找到对应的下标: ...
分类:
其他好文 时间:
2016-05-06 23:20:40
阅读次数:
330
Area of Simple Polygons Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3412 Accepted: 1763 Description There are N, 1 <= N <= 1,000 rectan ...
分类:
其他好文 时间:
2016-05-05 17:33:44
阅读次数:
134
题目链接:http://poj.org/problem?id=1151 关于离散化,这篇博客讲的很好:http://www.cppblog.com/MiYu/archive/2010/10/15/129999.aspx 我线段树还是不会写这个。。 借个图: ...
分类:
其他好文 时间:
2016-05-04 22:33:49
阅读次数:
187
Description 秋实大哥以周济天下,锄强扶弱为己任,他常对天长叹:安得广厦千万间,大庇天下寒士俱欢颜。 所以今天他又在给一群小朋友发糖吃。 他让所有的小朋友排成一行,从左到右标号。在接下去的时间中,他有时会给一段区间的小朋友每人v v 颗糖,有时会问第x x 个小朋友手里有几颗糖。 这对于没 ...
分类:
其他好文 时间:
2016-05-04 17:19:23
阅读次数:
198
因为只有1e5个点,所以直接离散化bfs就好 #include <cstdio> #include <cstring> #include <queue> #include <set> #include <map> #include <stack> #include <cstdlib> #includ ...
分类:
其他好文 时间:
2016-05-04 17:16:14
阅读次数:
133
分析:这种题烂大街,n^2,然后数据结构优化下到nlogn,离散化 #include <cstdio> #include <cstring> #include <queue> #include <set> #include <map> #include <stack> #include <cstdl ...
分类:
编程语言 时间:
2016-05-04 15:44:49
阅读次数:
293
【题目链接】点击打开链接
【题意】求矩形面积交,扫描线经典题!
【分析】浮点数先要离散化;然后把矩形分成两条边,上边和下边,对横轴建树,然后从下到上扫描上去,用mark【mark的作用到今天才搞明白,为什么要记录下底边和上底边差的个数,作用是为了统计总的下底边的长度sum时不出错,使得不会重复计算某个面积】表示该区间下边比上边多几个。线段树操作:update:区间增减
query:直接取...
分类:
其他好文 时间:
2016-05-01 01:11:23
阅读次数:
263
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1255 题意很清楚,就是让你求矩阵之间叠加层数大于1的矩形块的面积和。 因为n只有1000,所以我离散化一下,数据大小就缩小了,那么之后只需要线段树单点更新就好了。 ...
分类:
其他好文 时间:
2016-04-28 20:11:49
阅读次数:
262