对于一组只关心相对大小而与实际值无关的数据,适用于离散化。将每个数据x的值修改为x在数组a[]中从小到大排序的名次。这样离散化,缩小了数据之间的间隔,但又不改变其相对于其他数据的大小关系。可以减少数据的时空复杂度。for(i=1;i<=n;i++){scanf("%d",&a[i]);b[i]=a[...
分类:
其他好文 时间:
2015-10-08 14:23:55
阅读次数:
131
离散化后通过树状数组求出:b[i]为i之前比它小的。c[i]为i之前比它大的=i-1-i之前小于等于它的。d[i]为i之后比它小的。e[i]为i之后比它大的=n-i-f[i]。f[i]为i之后小于等于它的。则:$cnt_{123}=\sum_{i=1}^n b[i]e[i]$$cnt_{321}=\...
分类:
其他好文 时间:
2015-10-07 06:16:49
阅读次数:
150
一、信号的离散化 1、采样定理: –如果信号是带限的,并且采样频率fs超过信号最高频率的两倍,那么,原来的连续信号可以从采样样本中完全重建出来。 因此在仿真过程中,采样率(fs)是一个非常重要的参数。必须满足fs大于信号最高频率的两倍。 e.g:产生一段长度为1000的100Hz的正弦波 N = 1...
分类:
其他好文 时间:
2015-10-02 17:22:54
阅读次数:
221
题意是给你n张海报,告诉你每张海报的宽度和先后顺序,海报会重叠,问你露在外面的海报有多少张?这题主要是离散化理解了好久,关键在于建hash表时不能选择最普通的一一对应,为什么?看了网上一组数据后瞬间就明白了:1,10 1,4 6,10。Mayor's postersTime Limit:1000MS...
分类:
其他好文 时间:
2015-09-18 20:23:14
阅读次数:
140
动态建立结点就不用离散化了,细节见代码,相信还是比较好理解的。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int N = 500000; 8 set s; 9 ...
分类:
其他好文 时间:
2015-09-17 13:15:19
阅读次数:
186
数据太弱。。。离散化+暴力可以ac 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #define clr(a,x) memset(a,x,sizeof(a))10 #...
分类:
其他好文 时间:
2015-09-15 14:41:03
阅读次数:
127
Problem DescriptionTerrorists put some mines in a crowded square recently. The police evacuate all people in time before any mine explodes. Now the po...
分类:
其他好文 时间:
2015-09-12 15:59:13
阅读次数:
192
题目传送门题意:给你一棵树,树上的每个节点都有树值,给m个查询,问以每个点u为根的子树下有多少种权值恰好出现k次。分析:首先要对权值离散化,然后要将树形转换为线形,配上图:收获://还没写完。。。代码:/************************************************...
分类:
编程语言 时间:
2015-09-10 22:24:11
阅读次数:
247
题目传送门题意:在一面墙上贴海报,有先后顺序,问最后有多少张不同的海报(指的是没被覆盖或者只是部分覆盖的海报)分析:这题数据范围很大,直接搞超时+超内存,需要离散化:离散化简单的来说就是只取我们需要的值来用,比如说区间[1000,2000],[1990,2012] 我们用不到[-∞,999][100...
分类:
其他好文 时间:
2015-09-10 13:10:38
阅读次数:
233
思路:脑抽了,一看题目,这不就是线段树么,离散化区间合并。。最终发现我并不会写。。。于是看了下题目范围10^6。。。模拟水之。。每个区间左端点+1,右端点-1,从左到右扫一下就行了。。。代码: 1 /* 2 ID:xu baoqi 3 LANG:C++ 4 TASK:milk...
分类:
其他好文 时间:
2015-09-06 16:19:30
阅读次数:
166