2038: 小Z的袜子(hose)
Description
作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……
具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只...
分类:
其他好文 时间:
2016-05-07 10:15:25
阅读次数:
228
今天新学习了莫队算法,感觉好神,离线的询问好像都可以用莫队。 要不是坑爹的HNOI2016考了两道莫队题,才不得不来入这个坑 题目大意就是给一些数,然后每次询问一段区间,问从这个区间中抽走两个数,抽到相同的数的概率 把询问离线下来,然后按照左端点所在块的编号来排序,若在同一个块则以右端点编号排序(有 ...
分类:
其他好文 时间:
2016-05-01 14:43:19
阅读次数:
200
Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是 ...
分类:
其他好文 时间:
2016-04-30 19:39:30
阅读次数:
301
和BZOJ2038差不多。。复习一下。 1 #include<cstdio> 2 #include<cmath> 3 #include<algorithm> 4 using namespace std; 5 int block; 6 struct Query{ 7 int i,l,r; 8 bool
分类:
编程语言 时间:
2016-03-07 23:59:10
阅读次数:
472
神奇的莫队算法,用来解决可离线无修改的区间查询问题: 首先对原序列进行分块,√n块每块√n个; 然后对所有查询的区间[l,r]进行排序,首先按l所在的块序号升序排序,如果一样就按r升序排序; 最后就按顺序一个一个求出各个查询的结果:知道[l,r]的答案,并且在此基础上能在比较快地在O(x)得到相邻区
分类:
编程语言 时间:
2016-02-29 12:16:02
阅读次数:
216
这是个很奇怪的东西,不过有n*sqrt(n)的时间复杂度保证, 所以直接乱搞 一个区间[l,r]内抽到同种颜色袜子的概率(设num[i]表示该区间中颜色为i的袜子数量) sum( num[i])*(num[i]-1) ) / (r-l+1)*(r-l), (1<=i<=n) 分母很容易求出来,我们单
分类:
其他好文 时间:
2016-02-22 23:32:30
阅读次数:
246
要使用莫队算法前提 ,已知[l,r]的答案,要能在logn或者O(1)的时间得到[l+1,r],[l-1,r],[l,r-1],[l,r+1],适用于一类不修改的查询优美的替代品——分块将n个数分成sqrt(n)块按区间排序,以左端点所在块内为第一关键字,右端点为第二关键字,进行排序也就是以( po...
分类:
编程语言 时间:
2015-12-10 12:56:15
阅读次数:
234
Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一...
分类:
其他好文 时间:
2015-12-03 20:52:09
阅读次数:
177
题意:Q个询问,每个询问给定区间[L,R],求从里面任选两个数相同的概率。思路:莫队算法。用一个cnt数组记录当前区间每种数的个数,区间变化为1时O(1)的维护cnt数组,并可以O(1)的得到当前区间中与当前数相同的数的个数。 1 2 3 4 5 6 7 8 9 10 11 12 ...
分类:
编程语言 时间:
2015-08-15 22:45:46
阅读次数:
213
Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一...
分类:
其他好文 时间:
2015-08-02 16:26:02
阅读次数:
81