逆序对的经典题目。考试的时候不知道怎么写丑了,全WA了,正好带我复习了一遍逆序对。
将火柴序列从小到大分配一个等级,当a的等级与对应的b的等级相同时,答案最小,至于为什么是这样,我就不证明了。这里的等级,实际上就是离散化。
把a的等级从小到大排序之后,再把b对应a的等级排序,求出现在b的等级序列中的逆序对,就是我们要求的交换次数,因为每交换一次,只能使一组逆序对变成有序的。
注意暴搜求逆序对...
分类:
其他好文 时间:
2015-08-11 23:37:53
阅读次数:
124
acm第一发扫描线问题,其实算法原理很好理解 ,但是具体实现起来还是遇到诸多问题,我尝试参考了网上两份对于解决 线段树表示区间问题的方法, 第一种是每个结点的真实值,比如对于更新离散化后的1 ~ 4区间,我们在线段树中更新的是1 ~ 3,这样单个结点也可以表示一个最小单位区间。 第二种那就是在建树的时候改变通常策略,1 ~ 10 为总区间,两个孩子为1 ~ 5 ,5 ~
10。
核心难点...
分类:
其他好文 时间:
2015-08-11 14:15:00
阅读次数:
123
该题时限还是比较宽的,但是如果纯BFS还是会超时,所以要注意题目中的暗示 :任何一个2*2子网格中至少有一个障碍格 。 这表明障碍格有很多,那么重复搜索这些障碍格将会造成极大的浪费(因为我们开了三维数组记录三个鬼的状态,格子越多,状态也会以三次方的速度增加)。 所以我们可以将不是障碍的格子提出来再建一张图,用邻接表的方式。
那么怎么来建图呢? 受坐标离散化的启发,我们可以将每一个有用的格子映...
分类:
其他好文 时间:
2015-08-11 10:12:57
阅读次数:
94
D1T1 程序自动分析
题目大意:给定10910^9个变量和nn个等于/不等于的关系,判断能否存在一组解满足所有关系并查集傻逼题,NOIP小孩都会做
离散化一下,然后把相等的都用并查集并起来,判断每对不等关系是不是在同一并查集中就行了代码没拷回来,懒得再写一遍了D2T2 软件包管理器
题目大意:给定一棵有根树,每个点有黑白两种颜色,初始都为白色,每次进行以下两种操作:
1.将某个点所在的子树...
分类:
其他好文 时间:
2015-08-10 20:07:56
阅读次数:
182
题意:在墙上贴海报,海报之间可以互相覆盖,问最后可以看见几张海报.思路:这题数据范围很大,直接搞容易超时+超内存,需要离散化.离散化简单来说就是只取我们需要用到的值来用,比如说区间[1000,2000],[1990,2012]我们用不到[-inf,999][1001,1989],[1991,1999...
分类:
其他好文 时间:
2015-08-10 17:59:34
阅读次数:
103
HDU - 2227
Find the nondecreasing subsequences
Time Limit: 5000MS
Memory Limit: 32768KB
64bit IO Format: %I64d & %I64u
Submit Status
Description
How many nondecrea...
分类:
编程语言 时间:
2015-08-10 16:14:24
阅读次数:
203
题意:?给出两类点坐标
–一类可删除
–一类不可删除
?选出最少的行或列,删除所有要删除的点。
思路:
?首先看到坐标范围很大,第一点要做的就是离散化。
?接着,将行看成二分图的X集合,将列看成二分图的Y集合,于是,我们要删除的点,就是X连接Y的一条边。
?最后,我们要求的就是最少的点覆盖所有的边。在二分图中,最大匹配==最小点覆盖。
需要注意的地方:
?判断...
分类:
其他好文 时间:
2015-08-10 16:14:10
阅读次数:
187
这个题目本来对大神来说可能是水题, 对我就不行了,昨晚非折腾到下半夜一点 搞定, 并且可以总结出 ,只有把问题想清楚,或着看人家解题报告自己把问题和代码思路
搞清楚,才能谈的上调bug,否则根本就不知道错在哪儿。说说这个题目的理解,他是如何转化为线段树问题的呢?我们知道线段树有一个区间更新的东西,每张海报的宽度不就是一个区间么?那么我们可以用一棵树中的部分结点
来表示整张海报的可视部分,也就是...
分类:
其他好文 时间:
2015-08-10 13:37:04
阅读次数:
134
题意:n个区间 ,给出区间的左右坐标 ,区间内填满宽度为1的箱子,有m个板子给出板子的高度和左右坐标(同高度不重叠)所有箱子从上向下落,求每块板子能接到的箱子数。分析:首先给的区间很大,一开始直接存ME了,所以要先把给定的区间离散化 箱子的宽度是1则使维护区间左闭右开,才能得正确的数量。#inclu...
分类:
其他好文 时间:
2015-08-09 23:53:28
阅读次数:
102
CART连续属性参考C4.5的离散化过程,区别在于CART算法中要以GiniGain最小作为分界点选取标准。是否需要修正?处理过程为:先把连续属性转换为离散属性再进行处理。虽然本质上属性的取值是连续的,但对于有限的采样数据它是离散的,如果有N条样本,那么我们有N-1种离散化的方法:vj的分到右子树。...
分类:
其他好文 时间:
2015-08-09 20:14:26
阅读次数:
126