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

表现良好的最长时间段(LeetCode)

题目

给你一份工作时间表 hours,上面记录着某一位员工每天的工作小时数。

我们认为当员工一天中的工作小时数大于 8 小时的时候,那么这一天就是「劳累的一天」。

所谓「表现良好的时间段」,意味在这段时间内,「劳累的天数」是严格 大于「不劳累的天数」。

请你返回「表现良好时间段」的最大长度。

解题

"""
时间复杂度: O(n),因为我们只遍历一次数组。
空间复杂度: O(n),用于存储前缀和及其对应的索引。
"""def longestWPI(hours):prefix_sum = 0prefix_map = {}max_length = 0for i, h in enumerate(hours):# 如果 h > 8,prefix_sum +1; 否则 -1prefix_sum += 1 if h > 8 else -1if prefix_sum > 0:# 如果前缀和大于0,说明从开始到i的子数组都满足条件max_length = i + 1else:# 检查是否存在 prefix_sum - 1,如果存在则说明有符合条件的子数组if prefix_sum - 1 in prefix_map:max_length = max(max_length, i - prefix_map[prefix_sum - 1])# 如果 prefix_sum 不在哈希表中,记录下它第一次出现的索引if prefix_sum not in prefix_map:prefix_map[prefix_sum] = ireturn max_length# 示例 1
hours = [9, 9, 6, 0, 6, 6, 9]
print(longestWPI(hours))  # 输出: 3

相关文章:

表现良好的最长时间段(LeetCode)

题目 给你一份工作时间表 hours,上面记录着某一位员工每天的工作小时数。 我们认为当员工一天中的工作小时数大于 8 小时的时候,那么这一天就是「劳累的一天」。 所谓「表现良好的时间段」,意味在这段时间内,「劳累的天数」是严格…...

【性能优化】DNS解析优化

前言 DNS解析过程消耗时间DNS有本地缓存 比如首次访问某站点,会耗费很多时间进行DNS解析,但解析结束后会将ip地址存入本地设备,后续再访问此域名时就会直接从缓存中取。 首次访问页面时,本页面的DNS解析是无法优化的&#xff0…...

【剑指 offer】合并链表

目 录 描述: 输入两个递增的链表,单个链表的长度为 n,合并这两个链表并使新链表中的节点仍然是递增排序的。 思路: 定义一个新链表,先进行我们的原俩链表判断,然后比较俩链表的每个节点大小,然…...

红酒与节日装饰:打造节日氛围的需备品

随着节日的脚步渐渐临近,节日的氛围也愈发浓厚。在这个特殊的时刻,红酒与节日装饰无疑成为了营造节日氛围的需备品。洒派红酒(Bold & Generous)作为定制红酒的品牌,其不同的韵味与节日装饰的精致整合,共…...

Element Plus的el-carousel走马灯平铺多张图片

效果 <template><div class"system-banner"><el-carousel height"320px" indicator-position"outside" :autoplay"false"><el-carousel-item v-for"(item, index) in govList" :key"index"…...

【promise】Promise的几个关键问题 (三)

Ⅰ-如何改变 promise 的状态? (1) resolve(value): 如果当前是 pending 就会变为 resolved (2) reject(reason): 如果当前是 pending 就会变为 rejected (3) 抛出异常: 如果当前是 pending 就会变为 rejected Ⅱ-一个 promise 指定多个成功/失败回调函数, 都会调用吗? 当 pro…...

利用ZXing.Net Bindings for EmguCV识别条形码及绘制条形码边框17(C#)

上一篇博文&#xff1a;绘制条形码的效果不是很好&#xff1a;利用Emgucv绘制条形码边框16(C#)-CSDN博客 测试环境&#xff1a; win11 64位操作系统 visual studio 2022 ZXing.Net.Bindings.EmguCV 0.16.4 测试步骤如下&#xff1a; 1 新建.net framework 4.8的控制台项目…...

IP代理如何增强网络安全性?

在当今的数字时代&#xff0c;网络安全已成为一个关键问题&#xff0c;而使用 IP 代理可以成为增强网络安全的有效方法。根据请求信息的安全性&#xff0c;IP 代理服务器可分为三类&#xff1a;高级匿名代理、普通匿名代理和透明代理。此外&#xff0c;根据使用的用途&#xff…...

NDP(Neighbor Discovery Protocol)简介

定义 邻居发现协议NDP&#xff08;Neighbor Discovery Protocol&#xff09;是IPv6协议体系中一个重要的基础协议。邻居发现协议替代了IPv4的ARP&#xff08;Address Resolution Protocol&#xff09;和ICMP路由设备发现&#xff08;Router Discovery&#xff09;&#xff0c;…...

为何要隐藏源 IP 地址?

概述 在网络世界中&#xff0c;服务器的安全至关重要。一旦服务器遭受黑客攻击&#xff0c;采取正确的防御措施是防止进一步损害的关键。其中一项重要的策略就是隐藏服务器的真实 IP 地址。本文将探讨隐藏源 IP 地址的重要性&#xff0c;并提供一些实用的方法来实现这一目标。…...

目前最流行的前端构建工具,你知道几个?

现在的市面上有很多不同的前端构建工具&#xff0c;我们很难对它们一一进行关注。在本文中&#xff0c;我们将重点介绍最受欢迎的几种&#xff0c;并探讨开发人员喜欢或不喜欢它们的原因。 Webpack Webpack 是一个模块打包器&#xff0c;主要用于处理 Web 应用程序的资源的优化…...

C++函数模板温习总结

函数模板 // 1、typename 在这里是类型重定义(typedef)&#xff0c;而不是宏替换(#define) //2、模板的非类型参数&#xff0c;属性为const &#xff0c; 不允许修改 //3、函数模板不允许部分特例化&#xff0c;类模板可以 //4、模板函数和非模板函数重载&#xff0c;优先调用…...

【网络】套接字(socket)编程——TCP版

接着上一篇文章&#xff1a;http://t.csdnimg.cn/GZDlI 在上一篇文章中&#xff0c;我们实现的是UDP协议的&#xff0c;今天我们就要来实现一下TCP版本的 接下来接下来实现一批基于 TCP 协议的网络程序&#xff0c;本节只介绍基于IPv4的socket网络编程 基于 TCP 的网络编程开…...

水凝胶生物打印是什么?如何指导Organoids培养?有啥好处?

大家好&#xff0c;我们来了解这篇《Hydrogel-in-hydrogel live bioprinting for guidance and control of organoids and organotypic cultures》发表在《Nature Communications》的一篇文章。三维水凝胶基器官样培养&#xff0c;如类器官和体外器官型培养&#xff0c;能够自我…...

从springBoot框架服务器上下载文件 自定义一个启动器

在springboot框架中下载服务器存储的图片&#xff1a; 1&#xff09;springboot默认访问放行的目录只有static&#xff0c;在static目录下存放图片资源 2&#xff09;编译后的static目录中有一个1.png 2.5)编写控制器&#xff1a; Controller //RequestMapping("/upload&q…...

某通电子文档安全管理系统 CDGAuthoriseTempletService1接口SQL注入漏洞复现 [附POC]

文章目录 某通电子文档安全管理系统 CDGAuthoriseTempletService1接口SQL注入漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现0x06 修复建议某通电子文档安全管理系统 CDGAuthoriseTempletService1接口SQL注入漏…...

pythonselenium自动化测试实战项目(完整、全面)

前言 之前的文章说过&#xff0c; 要写一篇自动化实战的文章&#xff0c; 这段时间比较忙再加回家过11一直没有更新博客&#xff0c;今天整理一下实战项目的代码共大家学习。&#xff08;注:项目是针对我们公司内部系统的测试&#xff0c;只能内部网络访问&#xff0c;外部网络…...

如何选择合适的虚拟机软件?对比Parallels Desktop 和VMware Fusion 使用虚拟机畅玩黑神话悟空

随着技术的发展&#xff0c;虚拟机软件将更加高效地管理和分配系统资源。虚拟机软件扮演着越来越重要的角色。无论是软件开发者需要测试不同操作系统环境下的应用&#xff0c;还是普通用户希望在一台机器上同时运行多个操作系统&#xff0c;虚拟机软件都是不可或缺的工具。那么…...

ESP32FreeRTOS开发笔记:2.定义、多任务与优先级调度

FreeRTOS 是一种实时操作系统(RTOS),专门用于嵌入式系统。它之所以被称为 "FreeRTOS",是因为它是一个免费和开源的 RTOS。下面我们具体讨论一下 FreeRTOS 与 RTOS 的区别,以及 "free" 的含义。 一、什么是 RTOS? RTOS,全称 Real-Time Operating Sy…...

【Python-办公自动化】1秒比较出2张表格之间的不同并标黄加粗

欢迎来到"花花 Show Python"&#xff0c;一名热爱编程和分享知识的技术博主。在这里&#xff0c;我将与您一同探索Python的奥秘&#xff0c;分享编程技巧、项目实践和学习心得。无论您是编程新手还是资深开发者&#xff0c;都能在这里找到有价值的信息和灵感。 自我介…...

Linux下查看各进程的swap

cat /etc/re*se Red Hat Enterprise Linux Server release 6.8 (Santiago) 简单的可以通过top命令查看 top 后 按 f 进入选择列界面 按 p 就会输出swap信息&#xff08;变为P&#xff09; 回车返回看到SWAP信息了 再按 F 再按p 按swap排序 再回车后就是各进程按swap排序…...

最后一个单词的长度 简单字符串问题

给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1&#xff1a; 输入&#xff1a;s "Hello World" 输出&#xff1a;5 解…...

Autodesk Mudbox 2024:重塑创意边界的3D数字绘画与雕刻利器

在数字艺术与设计领域&#xff0c;Autodesk Mudbox 2024以其卓越的性能和直观的操作界面&#xff0c;再次刷新了3D数字绘画与雕刻软件的标准。作为Autodesk家族的一员&#xff0c;Mudbox不仅继承了其家族强大的技术基因&#xff0c;更在细节上精雕细琢&#xff0c;为艺术家和设…...

【python下用sqlite3, 多线程下报错,原因和解决 】

在python下用sqlite3, 多线程 在UPDATE 或者INSERT的时候, 会报错 sqlite3.OperationalError: cannot commit - no transaction is active 1. 原因 多线程写冲突 非原子写操作&#xff1a;如果多个线程同时执行非原子写操作&#xff0c;可能会导致数据覆盖或不一致。 2. 解…...

学习记录——day30 网络编程 端口号port 套接字socket TCP实现网络通信

目录 一、端口号 port 二、套接字 socket 1、原理 2、socket函数介绍 三、TCP实现网络通信 1、原理 2、TCP通信原理图 3、TCP相关函数 1&#xff09;bind 绑定 2&#xff09;listen 监听 3&#xff09;accept 接收连接请求 4&#xff09;recv 接收 5&#xff09;sen…...

【DataKit系列】数据迁移-实例搭建步骤(二)

说明&#xff1a;此文档仅包含使用DataKit进行数据迁移时&#xff0c;搭建迁移任务相关教程&#xff0c;不包含一些必须的前置配置步骤&#xff0c;和环境要求等&#xff0c;请优先学习“【DataKit系列】数据迁移-使用说明&#xff08;一&#xff09;”文档。 数据迁移实例搭建…...

发送jsonp请求(前后端如何实现)

发送jsonp请求(前后端如何实现) 前端 $.ajax({url: /api/jsonp,type: get,data: { id: 123 }, // 参数dataType: jsonp,jsonp: cb, // 回调函数的参数名jsonpCallback: successfn,// 回调函数contentType: "application/json; charsetutf-8",success: function(resp…...

Leetcode—1239. 串联字符串的最大长度【中等】(unordered_set)

2024每日刷题&#xff08;155&#xff09; Leetcode—1239. 串联字符串的最大长度 实现代码 class Solution { public:bool charSet(string & s) {unordered_set<char> charSet(s.begin(), s.end());// true表示有重复// false表示唯一return s.size() ! charSet.s…...

Spring Boot 3.x Rest API统一异常处理最佳实践

上一篇&#xff1a;Spring Boot 3.x Rest API最佳实践之统一响应结构 下一篇&#xff1a;Spring Boot 3.x Web单元测试最佳实践 参考著作&#xff1a;Error Handling for REST with Spring 在Spring MVC应用中&#xff0c;要对web表示层所抛出的异常进行捕获处理有多种方式&…...

线程的进阶学习

线程结束方式: 1.pthread_exit //pthread_join 2.从线程执行函数中return //此时效果等价于pthread_exit 3.pthread_cancel //线程可以被取消 4.任何一个线程调用了exit 或者 主线程 (main函数) return都会造成 进程结束 线程资源回收 ---pthread_join int pthread_ca…...