题意:给出n个区间,求选择一些区间,使得一个点被覆盖的次数超过m次,最小的花费。花费指的是选择的区间中最大长度减去最小长度。 坐标值这么大,n比较小,显然需要离散化,需要一个技巧,把区间转化为半开半闭区间,然后线段树的每一个节点表示一个半开半闭区间。 接着我们注意到需要求最小的花费,且这个花费只与选 ...
分类:
其他好文 时间:
2017-05-12 23:57:58
阅读次数:
455
原题传送门。。(9018上不去。明天再来搞。) 首先,这道题目是一道神奇的题。 看到这道题,第一眼就觉得2个数组排个序,然后一一对应的时候一定差值最小。 由于我们可以将这2个数列同时进行调换。 所以我们先把2个数列排个序。 第二个序列中的数组的下标都指向第一个数组中的数的原来位置(其实就是离散化(真 ...
分类:
编程语言 时间:
2017-05-12 23:13:48
阅读次数:
243
昨天在写带修改主席树的时候,咸鱼zcysky发现自己似乎根本不会写主席树 于是正好找个空复习下…… 主席树的原理不用我扯了,主席树为啥能求k大,大概在它可以用历史版本存下区间的前缀和,求的时候差分下就能提出我要求的区间。 不过这么搞的话不要忘了离散化。 1.kth number 就是上面的裸题,不要 ...
分类:
其他好文 时间:
2017-05-10 13:12:46
阅读次数:
239
原文地址:http://www.cnblogs.com/GXZlegend/p/6832263.html 题目描述 The cows have once again tried to form a startup company, failing to remember from past expe ...
分类:
编程语言 时间:
2017-05-09 20:37:30
阅读次数:
440
http://poj.org/problem?id=2299 题意:给出一组数,求逆序对。 思路: 这道题可以用树状数组解决,但是在此之前,需要对数据进行一下预处理。 这道题目的数据可以大到999,999,999,但数组肯定是无法开这么大的,但是每组数据最多只有500000个,那么,怎么办呢,离散化 ...
分类:
编程语言 时间:
2017-05-07 18:39:34
阅读次数:
157
题意:两道题差不多,都是给你一堆平面上的点,每个点有权值,然后m次询问求某一矩形区域内的点权和 题解:先离散化,然后将询问拆成左右两条线段,然后将点和这些线段一起按x坐标排序,在y轴上维护树状数组。然后询问的答案就是两条线段上点权和之差 BZOJ1935: BZOJ4822 ...
分类:
编程语言 时间:
2017-05-07 11:46:21
阅读次数:
363
题目连接:POJ - 1733 离散化+带权并查集 ...
分类:
其他好文 时间:
2017-05-06 19:56:21
阅读次数:
139
Paint Pearls 思路: 离散化+dp+剪枝; dp是个n方的做法; 重要就在剪枝; 如果一个长度为n的区间,有大于根号n种颜色,还不如一个一个涂; 来,上代码: ...
分类:
其他好文 时间:
2017-05-05 18:25:03
阅读次数:
222
题目链接:赛艇 讲道理好好的Boat为啥要翻译成赛艇呢……题面中不也是划艇么…… 这道题考虑一下dp。由于划艇数量过于庞大,所以肯定不能直接记录到dp状态中。所以一个想法就是把数量离散化,然后把每个学校的数量在哪一段内记录下来。也就是说\(f_{i,j,k}\)表示前\(i\)个学校,第\(i\)所 ...
原文地址:http://www.cnblogs.com/GXZlegend/p/6805224.html 题目描述 Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。M ...
分类:
编程语言 时间:
2017-05-04 09:47:35
阅读次数:
239