[LeetCode周赛复盘] 第 375 场周赛20231210

[LeetCode周赛复盘] 第 375 场周赛20231210

    • 一、本周周赛总结
    • 100143. 统计已测试设备
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100155. 双模幂运算
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100137. 统计最大元素出现至少 K 次的子数组
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100136. 统计好分割方案的数目
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 参考链接

一、本周周赛总结

  • T1 模拟。
  • T2 快速幂模拟。
  • T3 滑窗。
  • T4 分组线段合并。

100143. 统计已测试设备

100143. 统计已测试设备

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 用一个d记录后边要减去的数量

3. 代码实现

class Solution:def countTestedDevices(self, batteryPercentages: List[int]) -> int: d = ans = 0for i in range(len(batteryPercentages)):if batteryPercentages[i] - d>0:ans += 1d += 1return ans 

100155. 双模幂运算

100155. 双模幂运算

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 用py自带快速幂。

3. 代码实现

class Solution:def getGoodIndices(self, variables: List[List[int]], target: int) -> List[int]:return [i for i,(a,b,c,m) in enumerate(variables) if pow(pow(a,b,10),c,m) == target]

100137. 统计最大元素出现至少 K 次的子数组

100137. 统计最大元素出现至少 K 次的子数组

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 滑窗,但这题可能把窗口出到空,因此用双指针写法比队列写法方便一些。
  • 对每个右端点,考虑左端点的个数,即左端点向左一下即能出现合法,因此当cnt[mx]>=k即可滑。

3. 代码实现

class Solution:def countSubarrays(self, nums: List[int], k: int) -> int:mx = max(nums)l = 0cnt = Counter()ans = 0 for i,v in enumerate(nums):cnt[v] += 1while  cnt[mx] >= k:cnt[nums[l]] -= 1l += 1ans += lreturn ans

100136. 统计好分割方案的数目

100136. 统计好分割方案的数目

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 观察题意,要求相同数字必须分在同一组,因此可以先按数组分组,求每个数字的左右边界;
  • 这时发现有的数字会有交叉,根据题意他们也应该同组。
  • 于是想到线段合并。
  • 合并完后,相邻组可以任意分组或者不分。那么方案数考虑插板,n组中间有n-1个位置,每个位置可以插或不插。

3. 代码实现

class Solution:def numberOfGoodPartitions(self, nums: List[int]) -> int:g = {}for i,v in enumerate(nums):if v not in g:g[v]= [i,0]g[v][1] = i lr = sorted(g.values())c = 1x,y = lr[0]for l,r in lr:if l > y:x = l c += 1y = max(y, r)return pow(2,c-1,10**9+7)

参考链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/212060.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux用户和权限

一、认知root用户 1.1 了解什么是root用户(超级管理员) root用户(超级管理员) 无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。 在Linux系统中,拥有最大权限的账户名为:root&#x…

Java9及之后关于类加载器的新特性

为了保证兼容性,JDK9没有从根本上改变三层类加载器的架构和双亲委派模型,但为了模块化系统的顺利运行,仍然发生了一些值得被注意的变动。 一、变动1 由于引入了模块化概念,所以不同的类加载器回去加载属于不同模块的类 启动类加…

Nginx负载均衡实战

🎵负载均衡组件 ngx_http_upstream_module https://nginx.org/en/docs/http/ngx_http_upstream_module.html upstream模块允许Nginx定义一组或多组节点服务器组,使用时可以通过多种方式去定义服务器组 样例: upstream backend {server back…

从零开发短视频电商 在AWS SageMaker已创建的模型列表中进行部署

1.导航到 SageMaker 控制台。 2.在 SageMaker 控制台的左侧导航栏中,选择 “模型” 选项。 3.在模型列表中,找到您要部署的模型。选择该模型。 4.点击 “创建端点” 选项或者点击 “创建端点配置” 选项都可以进行部署。 选择创建端点进去后还是会进行…

[CTFshow 红包挑战] 刷题记录

文章目录 红包挑战7红包挑战8红包挑战9 红包挑战7 考点&#xff1a;xdebug拓展 源码 <?php highlight_file(__FILE__); error_reporting(2);extract($_GET); ini_set($name,$value);system("ls ".filter($_GET[1])."" );function filter($cmd){$cmd s…

1832_org-mode的注释处理

Grey # :OPTIONS ^:nil org-mode的注释处理 关于这部分其实比较简单&#xff0c;在我现在的使用诉求上来说要求不多。但是我觉得如果考虑以后把文学式编程作为一种开发的主要体验的话&#xff0c;掌握这样的操作很有必要。因为我可以控制部分信息的输出。 自然&#xff0c;控…

LeetCode-数组-重叠、合并、覆盖问题-中等难度

435. 无重叠区间 我认为区间类的题型&#xff0c;大多数考验的是思维能力&#xff0c;以及编码能力&#xff0c;该类题型本身并无什么算法可言&#xff0c;主要是思维逻辑&#xff0c;比如本题实际上你只需要能够总结出重叠与不重叠的含义&#xff0c;再加上一点编码技巧&#…

Verilog基础:$random系统函数的使用

相关阅读 Verilog基础​编辑https://blog.csdn.net/weixin_45791458/category_12263729.html $random系统函数语法的BNF范式如下所示&#xff0c;有关BNF范式相关内容&#xff0c;可以浏览以往文章Verilog基础&#xff1a;巴科斯范式(BNF)。 $random系统函数在每次调用时返回一…

【IDEA】IntelliJ IDEA中进行Git版本控制

本篇文章主要记录一下自己在IntelliJ IDEA上使用git的操作&#xff0c;一个新项目如何使用git进行版本控制。文章使用的IDEA版本 IntelliJ IDEA Community Edition 2023.3&#xff0c;远程仓库为https://gitee.com/ 1.配置Git&#xff08;File>Settings&#xff09; 2.去Git…

[gRPC实现go调用go]

1什么是RPC RPC&#xff1a;Remote Procedure Call&#xff0c;远程过程调用。简单来说就是两个进程之间的数据交互。正常服务端的接口服务是提供给用户端(在Web开发中就是浏览器)或者自身调用的&#xff0c;也就是本地过程调用。和本地过程调用相对的就是&#xff1a;假如两个…

深度优先遍历(DFS)

时间复杂度与深搜一致&#xff1b;

STM32 定时器总结

缩写 ARR: Auto-Reload Register&#xff08;保存定时器的计数范围&#xff09; PSC: Prescaler register&#xff08;预分频器寄存器&#xff0c;根据设置的分频因子N&#xff0c;计数N个定时器时钟脉冲后&#xff0c;产生一个CNT计数&#xff0c;以此实现分频功能&#xff0…

Android渲染-AHardwareBuffer

本文主要从应用的角度介绍android的native层AHardwareBuffer创建纹理以及保存渲染数据。 HardwareBuffer 要介绍native层的AHardwareBuffer&#xff0c;就需要先从Java层的HardwareBuffer说起。Android官方对于HardwareBuffer介绍如下&#xff1a; HardwareBuffer wraps a na…

基于SSM的点餐系统的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

【已解决】解决UbuntuKali无法进行SSH远程连接

目录 Ubuntu20.04配置SSH远程连接Kali Linux配置SSH远程连接 Ubuntu20.04配置SSH远程连接 首先更新安装包 sudo apt-get update 下载SSH服务 sudo apt install openssh-server 查看SSH服务 service ssh status 打开 /etc/ssh/sshd_config文件修改配置文件 将PermitRootLog…

12.视图

目录 1.视图的含义与作用 2.视图的创建与查看 1.创建视图的语法形式 2、查看视图&#xff1a; 1.使用DESCRIBE语句查看视图基本信息 2.使用SHOW TABLE STATUS语查看视图基本信息查看视图的信息 3.使用SHOW CREATE VIEW语查看视图详细信息 4.在views表中查看视图详细信息…

案例015:基于微信小程序的校园防疫系统

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

wangzherongyao milaidi

王者荣耀米莱狄&#xff0c; 1&#xff09;大多数人知道的是这个英雄很能拆塔&#xff0c; 2&#xff09;他也有个致命缺陷&#xff0c;当对面有前排&#xff0c;同样拆塔的时候&#xff0c;他也清不动线&#xff0c;而且对于前排来说他的爆发力远没有安其拉等爆发型顺伤秒伤…

论文阅读_反思模型_Reflexion

英文名称: Reflexion: Language Agents with Verbal Reinforcement Learning 中文名称: 反思&#xff1a;具有言语强化学习的语言智能体 文章: http://arxiv.org/abs/2303.11366 代码: https://github.com/noahshinn/reflexion 作者: Noah Shinn (Northeastern University) 日期…

docker 一键寻找容器在服务器存储位置

docker ps -a找到容器id/容器名称 docker inspect 容器id/容器名称 | grep UpperDir找出该容器在物理机的位置 inspect作用:查看docker详细信息 cd到UpperDir所指向的地址&#xff0c;找到配置文件并修改,到这后,这个位置和你用exec命令进入容器内看到文件是一致的