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

青岛建站方案广西住建网官网

青岛建站方案,广西住建网官网,新开传奇最大网站999,搜索微信公众号平台丢失的雨伞 题目思路代码演示 题目 今天晚上本来想练习一下前缀和与差分 结果给我搜出来这题(几乎没啥关系),我看半天有点思路但又下不了手哈哈,难受一批 在图书馆直接红温了 题目链接 思路 题目要求找到两个不重叠的区间&…

丢失的雨伞

  • 题目
  • 思路
  • 代码演示

题目

今天晚上本来想练习一下前缀和与差分 结果给我搜出来这题(几乎没啥关系),我看半天有点思路但又下不了手哈哈,难受一批 在图书馆直接红温了

在这里插入图片描述
题目链接

思路

题目要求找到两个不重叠的区间,前区间的最大值减去后区间的最小值最大,
我一开始的基本思路:对于这题权值的计算方法,我想尽可能地去掉前k个元素中的较小的数
对于后k个元素,我们想删去较大的值,如此才能保证我们找到最大的权值
如果不考虑暴力的思路,这个难点在于,我们如何去确定需要删去那些数,而且删除的位置我们也不好确定

正确思路:我们需要维护最大前缀以及最小后缀数组,找到贡献值最大的区间,枚举所有分割区间的方式,以此来找到最大的权值
在这里插入图片描述

代码演示

#include <iostream>
using namespace std;const int N = 100100;
int arr[N];         // 存储原始数组
int prefixMax[N];   // prefixMax[i] 表示前 i 个元素的最大值
int suffixMin[N];   // suffixMin[i] 表示从 i 到末尾元素的最小值int main() {int n, k;cin >> n >> k;for (int i = 1; i <= n; ++i)cin >> arr[i];// 预处理前缀最大值数组prefixMax[0] = 0;for (int i = 1; i <= n; ++i)prefixMax[i] = max(prefixMax[i - 1], arr[i]);// 预处理后缀最小值数组suffixMin[n + 1] = 1e9 + 10;  // 初始化末尾之后的最小值为极大值for (int i = n; i > 0; --i)suffixMin[i] = min(suffixMin[i + 1], arr[i]);int answer = -2e9;// 遍历所有合法的分割位置,计算权值最大值for (int i = k; i <= n - k; ++i)answer = max(answer, prefixMax[i] - suffixMin[i + 1]);cout << answer;return 0;
}

在这里插入图片描述

http://www.dtcms.com/wzjs/562204.html

相关文章:

  • 北京网站制作公司兴田德润可信赖合肥模板网站建设费用
  • 1网站免费建站网站做图片的大小
  • 网页制作与网站建设实战大全培训心得体会怎么写
  • 重庆北京网站建设自己有网站怎么优化
  • 公司网站介绍模板 htmlwordpress按修改时间排序
  • 北京中国建设工程造价管理协会网站自助建站系统免费模式
  • 青岛工程建设管理信息网站下载o2o电子商务网站开发与运营
  • 龙华住房和建设局网站怎么无法登陆软件下载
  • 网站建设与维护试题a卷做网站登录的需求分析
  • wordpress 主题站品牌网站建设特色大蝌蚪
  • 西宁seo网站建设二级a做爰片免费视网站
  • 夜场网站建设网站建设对企业的好处有哪些
  • 北京大龙建设集团有限公司网站首页阿里巴巴网官网首页
  • 阳东网站seo招考网站开发
  • 网站建设的基本步骤有哪些网站建设拍金手指谷哥14
  • 专门做字体设计的网站购物网站怎么创建
  • 新开传奇网站推荐南京网站推广费用
  • 广州萝岗网站建设容桂最新消息
  • 网站制作网站推广怎样用阿里云建设网站
  • 网站建设要花钱吗开启wordpress mu
  • 做网站公司融资多少华为手机网站建设策划书
  • 装潢设计师要学什么重庆网站seo排名
  • 网站建设评估报告织梦如何将wordpress
  • 只用jsp做网站梵克雅宝
  • 百度付费推广的费用昆明seo公司网站
  • 两学一做专题教育网站最好的销售管理系统
  • 网站建设难点是什么怎样用微信做购物网站
  • 建设学校网站的报告app软件开发的费用设计
  • 整站seoseo优化seo标题是什么
  • 网站建设类型分类wordpress顶和踩功能