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

长沙市规划建设局网站一站式媒体发布平台

长沙市规划建设局网站,一站式媒体发布平台,2022年网络规划设计师,缅甸做菠菜网站目录 题目:1124. 表现良好的最长时间段 - 力扣(Leetcode) 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 题目:1124. 表现良好的最长时间…

目录

题目:1124. 表现良好的最长时间段 - 力扣(Leetcode)

题目的接口:

解题思路:

代码:

过啦!!!

写在最后:


题目:1124. 表现良好的最长时间段 - 力扣(Leetcode)

题目的接口:

class Solution {
public:int longestWPI(vector<int> &hours) {}
};

解题思路:

这题好难,我之前没做过这样类似的题型,还是刷题刷少了,

这次全靠大神题解救我一命,但也有好多看不懂的操作。

废话不多说:

这题用的是前缀和以及单调栈的思路:

我们建一个vector计算前缀和:

思路是:如果工作小时大于8就看成1,工作小时小于8就看成-1。

然后维护一个递减的单调栈,每次将更远的区间位置push进去。

最后逆序迭代前缀和数组,与单调栈中的最远区间位置对比,

通过相减计算最远距离,最后返回即可。

代码:

class Solution {
public:int longestWPI(vector<int> &hours) {int n = hours.size();//建一个vector用来存储前缀和vector<int> v(n + 1, 0);//建立并维护一个单调递减的栈stack<int> st;st.push(0);//遍历整个数组for(int i = 1;i <= n;i++){//计算前缀和v[i] = (hours[i - 1] - 8 > 0 ? 1 : -1) + v[i - 1];//当出现更远距离的时候push进去if(v[st.top()] > v[i]){st.push(i);}}int ans = 0;//倒序遍历前缀数组for(int j = n;j >= 0;j--){while(!st.empty() && v[j] > v[st.top()]){//计算最大距离ans = max(ans, j - st.top());st.pop();}}return ans;}
};

过啦!!!

写在最后:

以上就是本篇文章的内容了,感谢你的阅读。

如果喜欢本文的话,欢迎点赞和评论,写下你的见解。

如果想和我一起学习编程,不妨点个关注,我们一起学习,一同成长。

之后我还会输出更多高质量内容,欢迎收看。

http://www.ho-use.cn/article/2937.html

相关文章:

  • 一个空间怎么做两个网站 跳转app拉新怎么做
  • ps6做网站点哪里保存港港网app下载最新版
  • UltraEdit做网站教程手机网址大全123客户端下载
  • wordpress 环保公益主题网址seo优化排名
  • 虞城网站建设建站系统哪个比较好
  • 惠州网站建设web91seo网站优化工具
  • 怎么网站建设怎么样佛山百度seo点击软件
  • 浅谈电子商务网站建设与管理的理解东莞企业网站模板建站
  • 医疗网站建设目录百度推广计划
  • 重庆皇华建设集团有限公司网站有没有免费的crm系统软件
  • 上海网站开发售后服务搜索引擎营销是指
  • 网站做戒酒通知书做国外网站
  • 建立一个网页需要多少钱长春做网站公司长春seo公司
  • 量子秘密网站怎么做长沙新媒体营销
  • 做课件ppt网站今日疫情最新消息
  • 做视频有收益的网站拉新app推广平台排名
  • 网上视频如何下载青岛seo网站关键词优化
  • 为校园网站建设提供网站seo关键词排名优化
  • github做网站速度快吗徐州关键词优化排名
  • 阿里云服务器做网站安全吗舆情监测软件
  • dm网站制作软件seo建站要求
  • 广州网站设计制作报价软件工程培训机构哪家好
  • 做营销网站建设价格磁力猫torrentkitty官网
  • 网页设计达人及作品推荐南京seo优化培训
  • 企业网站用什么技术做常熟seo网站优化软件
  • 提交图片的网站要怎么做百度快照提交入口
  • 河南新乡做网站公司长沙seo优化报价
  • 太原市建设委员会官方网站站长之家下载
  • 自己做公司网站成本如何使用免费b站推广网站
  • 合肥企业网站建设公司哪家好网站seo哪家做的好