惭愧 参考bloghttp://www.cppblog.com/varg-vikernes/archive/2010/03/02/108737.aspx

 #include<iostream>using namespace std;#define doit(n) for(int i=1;i<=n;i++)double a[100005],sum[100005];int n,m;double r,l;bool chack(double val){double temp;double pre=(sum[m-1])-(m-1)*val;//这里默认其实位置为1 for(int i=m;i<=n;i++){temp=(sum[i]-sum[i-m])-m*val; // 计算长度为m的和 pre+=(a[i]-val); //一段一段的往上加 pre=max(temp,pre); //这里用来更新起始位置 if(pre>-1e-6) //注意这里为负值 0的时候也想左翼 return 1;}return 0;
}int main(){while(scanf("%d%d",&n,&m)!=EOF){r=0;l=0x7FFFFFFF;memset(sum,0,sizeof(sum));doit(n){scanf("%lf",&a[i]);sum[i]=sum[i-1]+a[i];l=min(a[i],l);r=max(a[i],r);}while(r-l>1e-6){double mid=(r+l)/2;if(chack(mid)){l=mid;}elser=mid;}printf("%d\n",(int)(r*1000)); //这里选值必须选右面,要是选左面强制转换的时候会少一也就是说有可能6499 }return 0;
}

poj 2018 Best Cow Fences 二分查找dp相关推荐

  1. POJ - 2018 Best Cow Fences(二分+最长连续子段和)

    题目链接:点击查看 题目大意:给出n个正整数,求一个平均数最大的.长度不小于L的连续子段 题目分析:因为这个题目的答案满足二分的性质,也就是若二分的平均数小于答案,则更小的平均数肯定都满足答案(因为这 ...

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

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

  3. LeetCode 1182. 与目标颜色间的最短距离(二分查找/DP)

    文章目录 1. 题目 2. 解题 2.1 二分查找 2.2 DP 1. 题目 给你一个数组 colors,里面有 1.2. 3 三种颜色. 我们需要在 colors 上进行一些查询操作 queries ...

  4. LeetCode 410. 分割数组的最大值(极小极大化 二分查找 / DP)

    文章目录 1. 题目 2. 解题 2.1 二分查找 2.2 DP 1. 题目 给定一个非负整数数组和一个整数 m,你需要将这个数组分成 m 个非空的连续子数组. 设计一个算法使得这 m 个子数组各自和 ...

  5. POJ 1064 分割线缆(二分查找)

    题目链接:http://poj.org/problem?id=1064 题目大意:多根电缆切成指定段数(每段相同长度),求每段线缆的最大长度(精确到0.01) 这题精度控制是难点,方法很简单,二分查找 ...

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

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

  7. poj 3189 Steady Cow Assignment(二分+最大流)

    题意:N头牛(1000),B个农场(20),每个农场可以容纳一定数量的牛. 每头牛对每个农场都有一个排名(排名从1~B).每头牛都会在B个农场中的某一个,这头牛的高兴程度是它对这个农场的排名.为了使每 ...

  8. POJ 3258 River Hopscotch(二分查找答案)

    一个不错的二分,注释在代码里 #include <stdio.h> #include <cstring> #include <algorithm> #include ...

  9. POJ 3122 分披萨(二分查找)

    题目链接:http://poj.org/problem?id=3122 题目大意: 有 n 块披萨(大小不一样), f 个人分,包含主人自己 f+1 人: 每人吃的披萨必须是一块披萨上切下来的.每个人 ...

  10. 【实数二分/前缀和维护】Best Cow Fences

    Poj 2018 Best Cow Fences 实数二分+前缀和维护 调了一晚上, 但发现没什么注意事项orz 无输出只因eps定义成了int型QAQ哭唧唧 #include<cstdio&g ...

最新文章

  1. 灰色关联投影法python_python灰色关联算法(灰度关联算法)
  2. 网络:窗口控制下的重发机制、流量控制
  3. 1.3 继承(extends)
  4. 【clickhouse】配置ClickHouse分布式DDL记录自动清理
  5. 智能化连锁门店解决方案
  6. 构造函数为什么不能是虚函数
  7. POJ 1185 炮兵阵地(状压dp)
  8. Nginx 自定义404 页面
  9. arm开发板放张图片动起来_Python与Zynq的桥梁,米尔PYNQ开发板来了
  10. 基于flask框架的高校舆情分析系统
  11. 计算机专业复试有英语口语吗,计算机考研复试英语口语技巧
  12. Vbs脚本编程简明教程之十五
  13. android加音乐歌词代码,Android简易音乐播放器实现代码
  14. 本地化、国际化、全球化是指什么?
  15. php下一页的代码,php 下一页的代码
  16. PDF如何转换成EPUB格式
  17. 【CSS】537- 认真介绍 CSS 原理
  18. 理解echo openssl概念、用法、常用参数
  19. 微信扫二维码调用外部浏览器页面
  20. 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上

热门文章

  1. 【ctags/cscope/project安装使用】给神编辑器vim添加新的翅膀
  2. easyui更换主题之后出现validatebox的验证提示信息显示跑偏的解决方案
  3. JAVA之继承的必要性
  4. 艺术签名设计软件3.0汉化破解版 软件下载
  5. node.js的初步见解
  6. sql 查询表共多少列
  7. 费马小定理与欧拉公式
  8. 机器学习基础:模糊C均值聚类(Machine Learning Fundamentals: Fuzzy C-Means )Python实现
  9. Edmonds-Karp算法
  10. docker下的Mysql镜像的使用方法