
二分
Dlkoiw
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
最小得分和
最小得分和· 本题一看数据范围就知道大概是O(nlogn)的算法,然后很自然就想到了二分,但关键是怎么判断本题一看数据范围就知道大概是O(nlogn)的算法,然后很自然就想到了二分,但关键是怎么判断本题一看数据范围就知道大概是O(nlogn)的算法,然后很自然就想到了二分,但关键是怎么判断 对于需要原来O(n2)的查找,我们很快就想到了O(n)优化,具体地,有队列,预处理数组,堆……的优化,这时我...原创 2019-11-15 12:13:17 · 223 阅读 · 0 评论 -
二分答案
二分答案是一个很神奇的东西,如果答案可以线性判断,那么就可以考虑二分 二分可以将一个时间复杂度为O(n)的简化为O(logn) —————————————————————————————————————————————— 使用二分,首先要满足答案是单调的,其次判断二分出的答案是否满足条件的判断要足够简单 —————————————————————————————————————————————— ...原创 2019-09-06 21:52:27 · 193 阅读 · 0 评论 -
平均数
最大值的式子是: (sum[i]−sum[j])/(i−j)(sum[i]-sum[j])/(i-j) (sum[i]−sum[j])/(i−j) (i−j>=m)(i-j>=m)(i−j>=m) 很像0/1规划 所以我们要找到使答案最大的i,j 首先二分出一个midmidmid 比较(sum[i]−sum[j])/(i−j)与mid(sum[i]-su...原创 2019-09-06 22:11:44 · 127 阅读 · 0 评论 -
Cicada的序列
Cicada的序列 这道题貌似不太好做,但是我们发现除法最多只能除log(n)次,所以可以优化复杂度 具体的,原来右端点需要O(n)枚举的,我们可以先二分出一段区间,用st表O(1)查本区间的最值,找到第一个比原数小的位置,因为只能找logn次,所以时间降为log2n,总时间复杂度为O(nlog2n)具体的,原来右端点需要O(n)枚举的,我们可以先二分出一段区间,用st表O(1)查本区间的最值, ...原创 2019-10-04 22:42:16 · 270 阅读 · 0 评论