Poj 2018 Best Cow Fences

实数二分+前缀和维护

调了一晚上, 但发现没什么注意事项orz

无输出只因eps定义成了int型QAQ哭唧唧

#include<cstdio>
#include<iostream>
using namespace std;
const int sz = 100010;
double eps = 1e-5;
int n, f;
double a[sz], b[sz], sum[sz];
bool check(double k) {double minn = 1e10, ans = -1e10;for(int i = 1; i <= n; i++)b[i] = a[i] - k;for(int i = 1; i <= n; i++)sum[i] = sum[i-1] + b[i];for(int i = f; i <= n; i++) {minn = min(minn, sum[i - f]);ans = max(ans, sum[i] - minn);}if(ans >= 0) return true;else return false;
}
int main() {scanf("%d%d", &n, &f);    for(int i = 1; i <= n; i++)scanf("%lf", &a[i]);double l = -1e6, r = 1e6, ans = 0;while(r - l > eps) {double mid = (l + r) / 2.0;if(check(mid)) l = mid;else r = mid;}cout<< int(r * 1000) <<endl;return 0;
}

转载于:https://www.cnblogs.com/Hwjia/p/9902034.html

【实数二分/前缀和维护】Best Cow Fences相关推荐

  1. POJ 2018 Best Cow Fences (二分答案构造新权值 or 斜率优化)

    $ POJ~2018~Best~Cow~ Fences $(二分答案构造新权值) $ solution: $ 题目大意: 给定正整数数列 $ A $ ,求一个平均数最大的长度不小于 $ L $ 的子段 ...

  2. 【二分】Best Cow Fences(poj 2018)

    Best Cow Fences poj 2018 题目大意: 给出一个正整数数列,要你求平均数最大,长度不小于M的字串,结果乘1000取整 输入样例 10 6 6 4 2 10 3 8 5 9 4 1 ...

  3. 1434 Best Cow Fences

    1434 Best Cow Fences 来自一本通的二分,练习二分啊啊啊 求一个子序列,并且使得平均数最大,很明显是一个二分查找,也不知道要维护什么信息 一般对于这样的子序列的问题,肯定会设计到前缀 ...

  4. P1083 借教室(标记永久化线段树/二分+前缀和)难度⭐⭐⭐★

    P1083 借教室 标记永久化线段树 很典型的区间修改问题,先输入赋值建树(这就是最典型的线段树呀,别忘了),然后修改 这里问的是是否有足够的空教室,所以线段树中 min 代表的是当前区间内最小的剩余 ...

  5. POJ2018 Best Cow Fences —— 斜率优化DP

    题目链接:https://vjudge.net/problem/POJ-2018 Best Cow Fences Time Limit: 1000MS   Memory Limit: 30000K T ...

  6. POJ 3061 (二分+前缀和or尺取法)

    题目链接: http://poj.org/problem?id=3061 题目大意:找到最短的序列长度,使得序列元素和大于S. 解题思路: 两种思路. 一种是二分+前缀和.复杂度O(nlogn).有点 ...

  7. BZOJ3130: [Sdoi2013]费用流[最大流 实数二分]

    3130: [Sdoi2013]费用流 Time Limit: 10 Sec  Memory Limit: 128 MBSec  Special Judge Submit: 960  Solved:  ...

  8. POJ2018-Best Cow Fences【实数二分答案】

    正题 题目链接:http://poj.org/problem?id=2018 大意 有n个数,一段长度不小于L的子段,使他们的平均值最大. 解题思路 二分答案,然后一遍暴力用最大子段和的方法求出是否可 ...

  9. Best Cow Fences (前缀和 + 二分)

    描述 Farmer John's farm consists of a long row of N (1 <= N <= 100,000)fields. Each field contai ...

最新文章

  1. 层次聚类定义、层次聚类过程可视化、簇间距离度量、BIRCH、两步聚类、BIRCH算法优缺点
  2. vue-cli3集成typescript,sass variables,多页打包
  3. 不允许对系统目录进行即席更新_还不懂Docker?一个故事安排的明明白白!
  4. 尝试在centos5下运行phantomjs2
  5. java培训学费_北京Java培训班学费很贵吗,包含了哪些收费项目
  6. Modbus crc16校验
  7. Qt官方文档阅读笔记-QStyledItemDelegate Class描述
  8. Jzzhu and Chocolate(CF-449A)
  9. (38)时钟延迟约束
  10. 2020八年级计算机会考计划,初二下学期学习计划2020
  11. 获取一些系统和用户的通用属性
  12. [cpp] 重载运算符规律总结
  13. java 输出图片流_java IO流读取图片供前台显示代码分享
  14. 计算机房档案管理,机房档案管理制度
  15. 小议Linux安全防护(一)
  16. 用python结合matplotlib包,绘制带有误差棒和数值的柱状图,每根柱子配色不同
  17. 数据库备份的方式有哪些
  18. 日程安排工具Calendso
  19. c语言 %x,%d,%c,%s,%x各代表什么
  20. Pyhton3 下载Telegram 频道数据

热门文章

  1. mysql产品优化方案_mysql的优化方案
  2. 基于element-ui,vue的html随机点名器
  3. nginx代理配置根据ip地址来转发到不同的地址端口
  4. linux加密框架 crypto 算法管理 - 算法查找接口 crypto_find_alg
  5. Linux 时间函数的使用
  6. redis.conf配置文件详解
  7. 使用 OpenCL.Net 进行 C# GPU 并行编程
  8. Jenkins 详细安装、构建部署 使用教程
  9. 地址解析协议 (ARP) 是什么
  10. Shell编程入门基础上