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

上海市建设局网站沈阳设计网站公司哪家好

上海市建设局网站,沈阳设计网站公司哪家好,百年建筑网,优化大师使用心得目录 题目: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.15wanjia.com/news/160070.html

相关文章:

  • 创建网站域名企业网站建设套餐
  • 哈尔滨口碑好的网站建设公众平台是什么
  • 免费购物网站广州10大网站服务品牌
  • 天津差旅管家商旅服务有限公司广州seo网站排名优化
  • 闸北品牌网站建设免费网络课程平台
  • 怎么建设彩票网站h5必备网站
  • 用天地图做网站100个无水印短视频素材
  • 有没有便宜做网站的 我要做个百度seo排名点击
  • 快速网站推广公司官方网站建设 磐石网络多少费用
  • 网站开发 语音网站开发方式包括
  • 泉州最专业微信网站建设公司做知乎网站要多少钱
  • .flv 网站播放dhl做运单的网站
  • 行业网站建设深圳公司房地产网络营销方式
  • php做企业网站管理系统江西网络推广外包
  • 黑龙江省建设银行网站关键词投放
  • 如何给给公司建立网站在线crm视频观看
  • 广州白云网站建设公司中国企业网站建设现状
  • 高清免费素材网站沈阳网站排名公司
  • 个人网站的成本淄博刚刚发布紧急通知
  • 做平面设计一般上哪个网站参考vps主机支持WordPress
  • 快要到期的域名网站如何做外卖网站
  • 网站自己的工业设计考研比较好的学校
  • 驻马店营销型网站建设建设部网站注册中心
  • 制作网站联系方式网站域名被黑
  • 临沂外贸国际网站建设广州互联网
  • 公司网站制作制作wordpress 首页判断
  • 巨鹿网站建设公司阿里云建站流程
  • 做海报的软件app免费如何进行网站优化设计
  • 有做微推客的网站吗建筑工人app
  • 全国网站建设哪家好网站焦点图素材