[贪心][前缀和] Jzoj P4256 平均数
Description
请注意:一段子序列的平均值是子序列中所有数的和除以它的长度。
Input
第二行包含N个整数,代表数组A,1<=ai<=10^6。
Output
Sample Input
输入1:4 11 2 3 4输入2:4 22 4 3 4输入3:6 37 1 2 1 3 6
Sample Output
输出1:4.000000输出2:3.666666输出3:3.333333
Data Constraint
对于100%的数据,1<=N<=300000, 1<=K<=N, 1<=Ai<=1000000。
题解
- 先二分出来一个平均值,然后将序列里的所有数减去二分出来的数
- 然后求一遍前缀和直接判断就好了
代码
1 #include <cstdio> 2 #include <cstring> 3 #define N 300010 4 using namespace std; 5 int n,k; 6 double l,r,mid,a[N],b[N],eps=1e-5; 7 bool check(int x) 8 { 9 double p=0; 10 for (int i=k;i<=n;i++) 11 { 12 if (b[i]-p>=0) return 1; 13 if (b[i-k+1]<p) p=b[i-k+1]; 14 } 15 return 0; 16 } 17 int main() 18 { 19 freopen("average.in","r",stdin),freopen("average.out","w",stdout),scanf("%d%d",&n,&k); 20 for (int i=1;i<=n;i++) scanf("%lf",&a[i]),r+=a[i]; 21 while (r-l>eps) 22 { 23 double mid=(l+r)/2.0; b[0]=0; 24 for (int i=1;i<=n;i++) a[i]-=mid,b[i]=b[i-1]+a[i]; 25 if (check(mid)) l=mid; else r=mid; 26 for (int i=1;i<=n;i++) a[i]+=mid; 27 } 28 printf("%.5lf",l); 29 }
转载于:https://www.cnblogs.com/Comfortable/p/10358964.html
[贪心][前缀和] Jzoj P4256 平均数相关推荐
- 均分纸牌问题——(分治 + 贪心 + 前缀和 + 中位数 + 排序)
题目描述 七夕节因牛郎织女的传说而被扣上了「情人节」的帽子. 于是TYVJ今年举办了一次线下七夕祭. Vani同学今年成功邀请到了cl同学陪他来共度七夕,于是他们决定去TYVJ七夕祭游玩. TYVJ七 ...
- D. The Best Vacation(贪心+前缀和+二分)
The Best Vacation 思路 前缀和加贪心 贪心:我们的结尾点一定是在某一个月的最后一天. 贪心部分证明:我们选定两组数 A=an−2,an−1,an,b1,b2,b3--bn−2,bn− ...
- Boboniu Chats with Du(贪心 + 前缀和)
题目链接: Boboniu Chats with Du 大致题意: 给你n个数字, 让你给这n个数字进行合理排序, 使得结果这n个数字之和最大. 条件: 如果某个位置i出现了大于m的数字, 则接下来的 ...
- 51nod 1344 走格子【贪心/前缀和】
1344 走格子 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注 有编号1-n的n个格子,机器人从1号格子顺序向后走,一直走到n号格子,并需要从n号格 ...
- P6364 1024 程序员节发橙子(贪心+前缀和)
提交链接:传送门 思路:对于每一个人,都要考虑左右有多少个人成绩比它小的,在这两者之间要取一个最大值,因为这样才能保证每个人都分到了橙子.利用前缀和的思想,把每一个数左右两边小于它的处理出来,然后遍历 ...
- 灵能传输(贪心,前缀和)
灵能传输 题目链接 在游戏<星际争霸 II>中,高阶圣堂武士作为星灵的重要 AOE 单位,在游戏的中后期发挥着重要的作用,其技能"灵能风暴"可以消耗大量的灵能对一片区域 ...
- [dp][前缀和] Jzoj P5907 轻功(qinggong)
Description 题目背景: 尊者神高达进入了基三的世界,作为一个 mmorpg 做任务是必不可少的,然而跑地图却令人十分不爽.好在基三可以使用轻功,但是尊者神高达有些手残,他决定用梅花桩练习轻 ...
- [树上最长链][tarjan][单调队列][环上前缀和] Jzoj P5905 黑暗之魂(darksoul)
Description oi_juruo热爱一款名叫黑暗之魂的游戏.在这个游戏中玩家要操纵一名有 点生命值的无火的余灰在一张地图中探险.地图中有n个篝火(也就是存档点).在篝火处休息可以将生命值恢复满 ...
- 2021算法竞赛入门班第一节课【枚举、贪心】习题
目录 [USACO 2007 Jan S]保护花朵[经典贪心] [NOIP2005]校门外的树[区间合并] [NOIP2006]明明的随机数[签到] [HNOI2003]激光炸弹[二维前缀和] 铺地毯 ...
最新文章
- Python实现:详解LRU缓存淘汰算法
- 求第k小元素:采用特定分治策略
- DES/AES、SM4、RSA、SM2、SM3
- 玩转数据结构从入门到进阶四
- 3、(小数类型)FLOAT、DOUBLE、DECIMAL
- Intel RealsenseD435 color图与depth图的两种对齐(align)方式
- ubuntu下 显示no module named “lib“或 “lib.xxx“
- 树莓派3_win10下使用远程桌面连接与树莓派通信(使用VNC实现连接后)
- 如何使用git上传本地文件到码云上【详细步骤】
- 在spring中该如何使用DTO,以及DTO和Entity的关系
- Linux 内核调试器 调试指南
- c语言is int number,C语言中NSInteger,NSNumber以及Int的区别
- 金错刀:“打工皇帝”唐骏的职场潜规则
- WAP1.x协议栈浅析
- 国企程序员可以干多久
- Android中EditText优先弹出数字输入法
- 树莓派教程 - 1.5 树莓派GPIO库wiringPi 使用硬件串口ttyAMA0与ttyS0
- Ubuntu打造家用NAS三——网盘与影视中心
- 开源数据集网站推荐,持续更新!
- 苹果电脑mp3转gif_Mac视频怎样转换成Gif图片?