码迷,mamicode.com
首页 > 其他好文 > 详细

[BZOJ2724][Violet 6]蒲公英

时间:2017-10-03 17:25:10      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:vector   div   status   记录   sam   cup   ref   gre   lin   

2724: [Violet 6]蒲公英

Time Limit: 40 Sec  Memory Limit: 512 MB Submit: 2404  Solved: 825 [Submit][Status][Discuss]

Description

技术分享

 

Input

技术分享

修正一下

l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1) mod n + 1

Output

技术分享

Sample Input

6 3
1 2 3 2 1 2
1 5
3 6
1 5

Sample Output

1
2
1

HINT

技术分享

修正下:

n <= 40000, m <= 50000

 
设$mode\left(A\right)$表示集合$A$的众数
那么有一个显然的定理为$mode\left(A\cup B\right)\in A\cup\left\{mode\left(B\right)\right\}$
 
需要离散化,时间复杂度$O\left(nlogn\right)$
分为$x$块
设$f[i][j]$为第i块到第j块的众数,通过枚举$i$来求,时间复杂度为$O\left(xn\right)$
对于每个询问$\left(l,r\right)$,把中间的整块里面的众数用$f$数组得到,然后边缘的暴力判断出现次数
而出现次数的求法为:对每个权值开一个vector记录出现位置,在里面二分
所以单次询问的复杂度为$O\left(\frac{nlogn}{x}\right)$
那么总时间复杂度为$O\left(nlogn\right)+O\left(xn\right)+O\left(\frac{mnlogn}{x}\right) \ge O\left(nlogn+n\sqrt{mlogn}\right)$
当且仅当$x=\sqrt{mlogn}$时等号成立
 

[BZOJ2724][Violet 6]蒲公英

标签:vector   div   status   记录   sam   cup   ref   gre   lin   

原文地址:http://www.cnblogs.com/ruoruoruo/p/7623926.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!