当前位置: 首页 > news >正文

洛谷p1419

1. 问题转化我们要判断是否存在子数组b[j..i]长度len i-j1满足lenb[j]b[j1]...b[i]​≥x对不等式做等价变形两边乘lenb[j] ... b[i] ≥ x * len把右边移到左边(b[j]-x) (b[j1]-x) ... (b[i]-x) ≥ 0我们定义新数组a[i] b[i] - x那么问题就转化为数组a中是否存在一个长度在[s, t]范围内的连续子数组其和 ≥ 02. 前缀和的引入定义前缀和数组sum[i] a[1] a[2] ... a[i]注意这里sum[0] 0表示前 0 项和为 0。那么子数组a[j..i]的和可以用前缀和快速计算sum(j..i)sum[i]−sum[j−1]结合子数组长度的约束子数组长度len i - (j-1)要求s ≤ len ≤ t代入得s ≤ i - (j-1) ≤ t→ 整理出j-1的范围i-t ≤ j-1 ≤ i-s最终问题彻底转化为对于每个i在区间[i-t, i-s]内是否存在一个k使得sum[i] - sum[k] ≥ 0即sum[k] ≤ sum[i]换句话说只要在k ∈ [i-t, i-s]中最小的sum[k] ≤ sum[i]就存在满足条件的子数组。而这段代码的核心就是用单调队列在 O (n) 时间内高效地为每个i找到区间[i-t, i-s]内的最小sum[k]。#includebits/stdc.h using namespace std; const int N100005; //实数二分用double double a[N],sum[N],b[N];int q[N]; int s,t,n; double l,r,ans,mid; bool cheak(double k){ int l1,r0; sum[0]0; for(int i1;in;i) b[i]a[i]-k; //前缀和 for(int i1;in;i) sum[i]sum[i-1]b[i]; //q是单调队列存最小的并且靠后的那个 for(int i1;in;i) { if(is){ while(rlsum[i-s]sum[q[r]]) r--; q[r]i-s; } if(lrq[l]i-t)l; if(lrsum[i]-sum[q[l]]0) return true; } return false; } int main() { cinn; cinst; for(int i1;in;i) { cina[i]; } //在范围内实数二分 ansl-10000,r10000; while(r-l1e-5){ mid(lr)/2; if(cheak(mid)) anslmid; else rmid; } printf(%.3lf,ans); return 0; }
http://www.gsyq.cn/news/1373217.html

相关文章:

  • 关于我 博主介绍 代码获取说明
  • Linux内核开发避坑指南:workqueue工作队列实战,共享队列和自定义队列怎么选?
  • 学习心得一:方波的产生
  • ge:昇腾CANN的图引擎架构剖析
  • 别让阴影偷走你的电费!手把手教你用无人机巡检排查光伏板热斑(附Python分析脚本)
  • 别再手动输卡号了!用PaddleOCR+Python实现银行卡信息自动识别(附完整代码)
  • 别再死记公式了!用Python+Sklearn实战朴素贝叶斯邮件分类(附拉普拉斯平滑调参技巧)
  • 【无标题】学生用户画像—考勤主题扩建标签构建
  • 07-大模型智能体开发工程师:提示词工程(Prompt Engineering)
  • 2025-2026年国内全屋定制品牌推荐:五款口碑评测防变形开裂特点选择指南
  • MNE-Python 第10天学习笔记:结果报告与可视化
  • Windows Cleaner技术架构解析:开源磁盘清理工具的模块化设计与实现
  • 第一阶段:地基——Python 与 API 调用
  • 信号处理实战:SSA-ICA算法在Python中的完整应用,分离单通道EEG脑电信号
  • AI云计算时代:腾讯“搞钱”、阿里“撒币”、百度“登山”
  • 给Llama-3-8B-Instruct加个‘垫片’:手把手教你安全添加Pad Token并微调(附完整代码)
  • 新号别搞:字符+字符串+内存 函数
  • 千年盛世手游官网下载:千年盛世最新官方下载渠道
  • 小学期学习——第二周
  • Java国密SM2证书Unknown curve异常的三步绕过方案
  • SQL注入漏洞进阶篇
  • 医疗AI提示词设计与评估方法详解
  • C51中断服务中的寄存器保护机制与优化实践
  • PostgreSQL 15.7 CDC → Flink → Kafka 操作笔记
  • 机器学习周报四十六
  • 2026最新免费照片去水印App保姆级教程,这四款宝藏工具一看就会!
  • 数据库设计三大范式
  • 边缘存储优化:提升边缘节点的数据存储效率
  • GLM-5.1高速版:400 tokens/s,大模型速度革命
  • 【消息队列】Kafka深度解析:从原理到生产环境实战