Best Cow Fences题解
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld题目描述
Farmer John's farm consists of a long row of N(1≤N≤100,000)fields. Each field contains a certain number of cows,1≤ncows≤2000.
FJ wants to build a fence around a contiguous group of these fields in order to maximize the average number of cows per field within that block. The block must contain at least F (1≤F≤N)) fields, where F given as input.
Calculate the fence placement that maximizes the average, given the constraint.输入描述:
* Line 1: Two space-separated integers, N and F. * Lines 2..N+1: Each line contains a single integer, the number of cows in a field. Line 2 gives the number of cows in field 1,line 3 gives the number in field 2, and so on.输出描述:
* Line 1: A single integer that is 1000 times the maximal average.Do not perform rounding, just print the integer that is 1000×ncowsnfields\frac{1000\times ncows}{nfields}nfields1000×ncows.示例1
输入
10 6 6 4 2 10 3 8 5 9 4 1输出
6500二分答案
AC代码:
#include <bits/stdc++.h> using namespace std; const double eps = 1e-5; double a[100010],b[100010],sum[100010]; int main(){ios::sync_with_stdio(false);cin.tie(nullptr);int n,L;cin >> n >> L;for(int i = 1;i <= n;i++) cin >> a[i];double l = -1e6,r = 1e6;while(r - l > eps){double mid = (l + r) / 2;for(int i = 1;i <= n;i++) b[i] = a[i] - mid;for(int i = 1;i <= n;i++) sum[i] = (sum[i - 1] + b[i]);double ans = -1e10;double min_val = 1e10;for(int i = L;i <= n;i++){min_val = min(min_val,sum[i - L]);ans = max(ans,sum[i] - min_val);}if(ans >= 0) l = mid;else r = mid;}cout << int(r * 1e3) << endl;return 0; }
Best Cow Fences题解相关推荐
- POJ2018 Best Cow Fences —— 斜率优化DP
题目链接:https://vjudge.net/problem/POJ-2018 Best Cow Fences Time Limit: 1000MS Memory Limit: 30000K T ...
- POJ 2018 Best Cow Fences (二分答案构造新权值 or 斜率优化)
$ POJ~2018~Best~Cow~ Fences $(二分答案构造新权值) $ solution: $ 题目大意: 给定正整数数列 $ A $ ,求一个平均数最大的长度不小于 $ L $ 的子段 ...
- 【二分】Best Cow Fences(poj 2018)
Best Cow Fences poj 2018 题目大意: 给出一个正整数数列,要你求平均数最大,长度不小于M的字串,结果乘1000取整 输入样例 10 6 6 4 2 10 3 8 5 9 4 1 ...
- 【实数二分/前缀和维护】Best Cow Fences
Poj 2018 Best Cow Fences 实数二分+前缀和维护 调了一晚上, 但发现没什么注意事项orz 无输出只因eps定义成了int型QAQ哭唧唧 #include<cstdio&g ...
- 1434 Best Cow Fences
1434 Best Cow Fences 来自一本通的二分,练习二分啊啊啊 求一个子序列,并且使得平均数最大,很明显是一个二分查找,也不知道要维护什么信息 一般对于这样的子序列的问题,肯定会设计到前缀 ...
- 2020 GDUT Rating Contest I (Div. 2) A - Cow Gymnastics 题解
好吧--是时候补一下题解了 原题 题目大意 给出n只牛,k次排序,如果有一只牛一直比另外一只牛更前算作一对,输出一共有多少对. 题目分析 水题(数据规模小),一开始初始化全部都可以,然后一个个删去就行 ...
- 102. Best Cow Fences
Powered by:NEFU AB-IN Link 文章目录 102. 最佳牛围栏 题意 思路 代码 102. 最佳牛围栏 题意 农夫约翰的农场由 N 块田地组成,每块地里都有一定数量的牛,其数量不 ...
- 「一本通 1.2 例 2」Best Cow Fences
题目链接: 链接: [link](信息学奥赛一本通(C++版)在线评测系统). 首先这道题要求找平均数,且要求所选片段长度需要大于等于l.那么首先想到的就是最暴力的方法就是找到所有大于等于l的片段在其 ...
- POJ - 2018 Best Cow Fences(二分+最长连续子段和)
题目链接:点击查看 题目大意:给出n个正整数,求一个平均数最大的.长度不小于L的连续子段 题目分析:因为这个题目的答案满足二分的性质,也就是若二分的平均数小于答案,则更小的平均数肯定都满足答案(因为这 ...
最新文章
- 深思:如何堂堂正正的做事
- iOS 绘画 点与像素
- 苹果应用ipa图片提取
- 人工智能的策略,如果国家优先发展”梦想成真”?
- html源码md风格,code/html.md at master · Rongx/code · GitHub
- set hive.map.aggr=true 时统计PV数据错误
- java jstack 死锁_利用jstack检测死锁DeadLock
- Java 简单五子棋程序的实现
- STM32工作笔记0068---SPI同步通信Flash读写实验
- Codeforces Round #249 (Div. 2) (模拟)
- 3ds max制作宋惠乔的教程----作者: 火星时代 来源: 火星时代
- 【转】GBK编码表和GBK编码规范
- Halcon软件安装教程
- 这一次的互联网寒冬,又会有多少人倒下?
- PostgreSQL-11.7关系型数据库源码安装
- python获取mac地址_python获取mac地址的方法
- 神舟战神Z7M-笔记本背光灯怎样打开?
- 嵌入式Linux之我行——C+CGI+Ajax在S3C244
- 讯飞智能录音笔SR502内存升级,实力更强大
- 波音737座位哪里好_我的座位在哪里?
热门文章
- 【社招】一年测开经验转后端开发经历。
- Power Table
- c/c++ 中有关freeopen介绍
- 孝感学院专升本计算机试卷,湖北工程学院自学考试历年真题有参考性吗
- Leo仿【DOTA视频站】项目实践【三】---- 获取DOTA2视频已经XListView实现上拉加载更多、下拉刷新
- 计算机技术在模具设计中的应用,计算机技术在冲压模具设计中的应用.pdf
- 高职单招数学公式大全,高职单招数学重点公式
- ico的使用和工具和生成
- 前脚我的 GPT4 被封,后脚收到了文心一言的邀请账号
- 用微信小程序开店之七——小程序组件3:“表单”(1)