二分
文章平均质量分 62
SSL_GYX
座右铭:言念君子,温其如玉。
展开
-
【ybt】【基算 二分 课过 例3】最大均值
最大均值 题目链接:最大均值 题目描述 解题思路 很明显是二分平均值。 这样就用掉了 O(logn)O(\log {n})O(logn) 的时间复杂度,而一般的二分题是 O(nlogn)O(n \log {n})O(nlogn) 的时间复杂度(也可能是我才疏学浅没有遇到过难一点的)。 现在问题就变成了:如何用 O(n)O(n)O(n) 的时间复杂度验证在平均值为 midmidmid 的情况下序列中是否存在一个长度大于 lll 的 ...原创 2021-01-02 19:17:15 · 153 阅读 · 0 评论 -
【ybt】【基算 二分 课过 例2】防具布置
防具布置 题目链接:防具布置 题目描述 解题思路 首先,每个点及之前的点一共有多少个防具是可以求出来的, O(n)O(n)O(n)。 然后,因为只有一处防线有问题,所以如果当前点为奇数,那么有问题的防线一定是在它之前的,我们就可以以此为基础进行二分。O(logn)O(\log{n})O(logn)。 当然,如果第 214748364721474836472147483647 道防线是偶数,那么全部的防线都没有问题了。 code #include<iostream> #include<原创 2020-12-26 16:21:59 · 126 阅读 · 0 评论 -
【ybt】【基算 二分 课过 例1】数列分段
数列分段 题目链接:数列分段 题目描述 解题思路 这道题考虑二分答案。 用一个 check()check()check() 来检验这个答案是否可以满足。 即可。 code #include<iostream> #include<cstdio> #define int long long using namespace std; int n,m; int a[100010]; int t,ans=0x3f3f3f3f; int check(int f) { int h=1,s=原创 2020-12-26 11:56:18 · 122 阅读 · 0 评论