YJJ's Salesman Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 253 Accepted Submission(s): 62 Pro ...
分类:
其他好文 时间:
2018-08-25 21:21:17
阅读次数:
250
今天考试考了这题,所以来贡献$[POI2015]LOG$的第一篇题解。代码略丑,调了快三个小时才调出来$AC$代码。 对于这种小清新数据结构题,所以我觉得树状数组才是这道题的正确打开方式。 首先离散化,这样才不会爆内存。开两个树状数组,第一个树状数组记录离散化后$1$到$i$中数字出现的个数,第二个 ...
分类:
其他好文 时间:
2018-08-25 20:01:43
阅读次数:
186
求逆序对是枚举一个数,统计前面有多少数小于它 这个用乘法原理,统计左右小于或大于它的 要用树状数组,但数太大数组开不下,要离散化 A[0]存储的是是0的数有多少个 ...
分类:
其他好文 时间:
2018-08-25 18:53:15
阅读次数:
140
[Codeforces div.1 55D] Beautiful numbers 试题分析 还是离散化。。。$f_{i,j,k}$表示i位,gcd为j,余数为k。 include include include include include using namespace std; define ...
分类:
其他好文 时间:
2018-08-23 10:49:01
阅读次数:
206
离散化的思想就是将分布大却数量少(即稀疏)的数据进行集中化的处理,这样可以有利于程序的空间与时间,能减少遍历次数与空间储存。 然而虽然我会了思想今天问了翔神半天才知道怎么实现。。 其实实现的方式与口述的角度还是有所不同。 思想理解起来其实道理很简单,如坐标(3,2000),(10005,31),(1 ...
分类:
其他好文 时间:
2018-08-23 02:13:34
阅读次数:
198
Problem UVA12171-Sculpture Accept: 196 Submit: 1152 Time Limit: 3000 mSec Problem Description Imagine a box, made of copper plate. Imagine a second on ...
分类:
其他好文 时间:
2018-08-22 00:21:53
阅读次数:
337
先介绍一下离散化 桶排大家应该知道,就是开一个数组(下标为数值,记录了该数值的出现次数)然后遍历过去如果出现次数不为零,那就输出这些数字,理论时间复杂度可以达到O(N)但是由于内存限制,不能开很大的数组。 然而 如果某个数列中的数字不要求大小确定,只要求这些数字有相对的大小就够了的话, 离散化 就有 ...
分类:
其他好文 时间:
2018-08-20 21:53:59
阅读次数:
621
先讲一下:dalao @lisuier 发布的 "前一篇题解" 严格来讲是有错误的 比如下一组数据: ~~简单~~看出这道题用线段树~~可解~~ so 我们用 "离散化+权值线段树(戳这里详解)" ~~实际上是安利自己博客~~ 思路:建一棵空数,然后把某一区间的颜色更新为读入的颜色; WA,SO E ...
分类:
其他好文 时间:
2018-08-20 21:53:43
阅读次数:
188
对于每个数$a_i$,易得它对答案的贡献为 它左边比它小的数的个数$\times$它右边比它大的数的个数。可以离散化后再处理也可以使用动态开点的线段树。我使用了动态开点的线段树,只有需要用到这个节点的时候才新建这个节点,这里我是在进行修改的时候新建的。时间复杂度$O(n\log (\max \rm ...
分类:
其他好文 时间:
2018-08-17 13:53:09
阅读次数:
150
离散化 使用场景&思路 当需要把一个数据范围很大,但是元素个数较少的集合映射到数组下标上时,因为计算机内存的限制,数组下标不可能完全包含这极大的数据范围,所以我们需要将其(排序后)重新顺序标号。 至于离散后数据的具体值,很多时候我们不需要关心,我们只需要知道他们之间相对的大小(这时可以排序后再离散化 ...
分类:
其他好文 时间:
2018-08-16 23:44:50
阅读次数:
222