JZOJ 4809 【NOIP2016提高A组五校联考1】挖金矿
来源:互联网 发布:软件招聘会 编辑:程序博客网 时间:2024/06/10 09:06
挖金矿
题目大意
给出一个
数据范围
题解
看到求平均数的最大值,优先考虑二分。
二分答案,用矩阵里的数减去二分的答案,若为正数,说明比二分的答案大,若为负数,说明比二分的答案小,然而这结论并没有什么卵用,对于每一行都做一次前缀和,然后对于每一行选最大的前缀和加入贡献当中,若总贡献大于
Code(Pascal)
var a:array[0..350000] of extended; n,h,l,i:longint; le,ri,mi:extended;function maxe(a,b:extended):extended; begin if a>b then exit(a) else exit(B); end;function ok(oo:extended):boolean; var cqy,lo,ve:extended; i,l,k:longint; begin lo:=0; cqy:=0; k:=0; for i:=1 to n do begin lo:=0; ve:=-maxlongint; for l:=1 to h do begin inc(k); lo:=lo+a[k]-oo; ve:=maxe(ve,lo); end; cqy:=cqy+ve; end; if cqy>=0 then exit(true) else exit(false); end;begin readln(n,h); for i:=1 to n do begin for l:=1 to h do read(a[i*h-h+l]); readln; end; le:=0; ri:=1000000000; while le+0.0000001<ri do begin mi:=(le+ri)/2; if ok(mi) then le:=mi else ri:=mi; end; while not(ok(le)) do le:=le-0.00001; writeln(le:0:4);end.
3 0
- JZOJ 4809 【NOIP2016提高A组五校联考1】挖金矿
- 【JZOJ4809】【NOIP2016提高A组五校联考1】挖金矿
- 【NOIP2016提高A组五校联考1】挖金矿
- 【NOIP2016提高A组五校联考1】挖金矿
- JZOJ4809. 【NOIP2016提高A组五校联考1】挖金矿
- 【NOIP2016提高A组五校联考1】挖金矿
- 【NOIP2016提高A组五校联考1】挖金矿
- 【NOIP2016提高A组五校联考1】挖金矿
- 【JZOJ 4809】【NOIP2016提高组 五校联考1】挖金矿
- jzoj 4811. 【NOIP2016提高A组五校联考1】排队
- JZOJ 4810 【NOIP2016提高A组五校联考1】道路规划
- JZOJ 4811 【NOIP2016提高A组五校联考1】排队
- JZOJ 4812 【NOIP2016提高A组五校联考2】string
- [jzoj 4812]【NOIP2016提高A组五校联考2】string
- JZOJ 4813 【NOIP2016提高A组五校联考2】running
- JZOJ 4814. 【NOIP2016提高A组五校联考2】tree
- 【jzoj 4814】【NOIP2016提高A组五校联考2】tree
- JZOJ 4814 【NOIP2016提高A组五校联考2】tree
- I2C之24c02
- My SQL 对数据的条件查询
- jzoj 4811. 【NOIP2016提高A组五校联考1】排队
- JavaScript API 设计原则
- Linux进程通讯:管道通讯、信号通讯、共享内存
- JZOJ 4809 【NOIP2016提高A组五校联考1】挖金矿
- 数据结构的顺序存储结构
- ubuntu12.04修改界面字体大小
- 近年高光谱亚像元目标检测与定位方法
- 网络流
- 2016/10/4(慕课网JS基础学习)
- 清除浮动
- 检测32位num值的第n位是否为1(0)
- VBS 自动登录实现代码