
离散化
1
hesorchen
这个作者很懒,什么都没留下…
展开
-
矛盾的关系
在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足。考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定n个形如xi=xj或xi≠xj的变量相等/不等的约束条件,请判定是否可以分别为每一个变量赋予恰当的值,使得上述所有约束条件同时被满足。例如,一个问题中的约束条件为:x1=x2,x2=x3,x3=x4,x1≠x4,这些约束条件显然是不可能同时被满足...原创 2020-04-21 17:21:39 · 4279 阅读 · 0 评论 -
Mayor's posters 线段树+离散化+桶
简单说下题意:就是在一个宽1e7墙上面贴n张海报,第i张海报的起点是li,终点是ri,显然海报会覆盖别的海报。问依次贴完n张海报之后最后能看见几张海报。题目要求最后能看见多少张海报,那么我们将每张海报都分别标上序号1,2,3…n。然后线段树修改区间,最后看线段树最底层有多少种数字即可。需要注意的几点:海报终点可能到1e7,我们要做的区间修改以及最后桶排计数工作量就会非常大,但是只有...原创 2020-03-04 09:23:05 · 5206 阅读 · 0 评论 -
逆序对
题目链接: 洛谷P1908逆序对:序列a中 ai>aj 且 i<j 的有序对树状数组和线段树解法类似,因为只需 用到单点修改。解题思路:我们将整个线段树看成桶,每次输入一个ai可以看成单点修改,tree[ai]++,此时,线段树[ai,max]的区间值就是以ai为后者的逆序对数量。因为这题中,ai可能高达1e9,这样线段树作为桶可能会炸空间,但是最多只有50000个数...原创 2020-02-27 18:03:54 · 5719 阅读 · 2 评论 -
离散化
离散化,把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。例如:原数据:1,999,100000,15;处理后:1,3,4,2;原数据:{100,200},{20,50000},{1,400};处理后:{3,4},{2,6},{1,5};有时候,我们要处理的数据范围非常大,但是数据量并不多, 比...原创 2020-02-27 15:49:29 · 5166 阅读 · 0 评论