LeetCode笔记:Weekly Contest 349

news/2024/11/13 4:22:45/
  • LeetCode笔记:Weekly Contest 349
    • 1. 题目一
      • 1. 解题思路
      • 2. 代码实现
    • 2. 题目二
      • 1. 解题思路
      • 2. 代码实现
    • 3. 题目三
      • 1. 解题思路
      • 2. 代码实现
    • 4. 题目四
  • 比赛链接:https://leetcode.com/contest/weekly-contest-349

1. 题目一

给出题目一的试题链接如下:

  • 2733. Neither Minimum nor Maximum

1. 解题思路

这一题我实现的比较暴力,就是先找到最大最小值,然后顺序检索找出第一个不等于这两个值的数返回。

2. 代码实现

给出python代码实现如下:

class Solution:def findNonMinOrMax(self, nums: List[int]) -> int:_min = min(nums)_max = max(nums)for x in nums:if x != _min and x != _max:return xreturn -1

提交代码评测得到:耗时381ms,占用内存16.4MB。

2. 题目二

给出题目二的试题链接如下:

  • 2734. Lexicographically Smallest String After Substring Operation

1. 解题思路

这一题思路整体也还好,就是找到第一段不包含a的最长连续子串,将其减一即可。

2. 代码实现

给出python代码实现如下:

class Solution:def smallestString(self, s: str) -> str:n = len(s)idx = 0l, r = -1, -1while idx < n and s[idx] == "a":idx += 1l = idxwhile idx < n and s[idx] != "a":idx += 1r = idxif l == n:return s[:-1] + "z"def op(ch):if ch == "a":return "z"return chr(ord(ch)-1)sub = "".join(op(ch) for ch in s[l:r])return s[:l] + sub + s[r:]

提交代码评测得到:耗时255ms,占用内存22.5MB。

3. 题目三

给出题目三的试题链接如下:

  • 2735. Collecting Chocolates

1. 解题思路

今天状态真的是不好,这道题把我卡了n久,简直了……

本质上来说,就是遍历一下最大移动距离为0到n-1的情况,然后对于任意最大移动距离为k的情况下,对于任意一个点所需的最小cost就是其本身到之前k个点当中最小值的大小,我们用一个动态规划即可快速得到。

综上,我们即可得到我们的最终答案。

2. 代码实现

给出python代码实现如下:

class Solution:def minCost(self, nums: List[int], x: int) -> int:n = len(nums)dp = [[cost for cost in nums] for _ in range(n)]for i in range(1, n):for j in range(n):dp[i][j] = min(dp[i-1][j], nums[(j-i+n) % n])costs = [sum(s) + i * x for i, s in enumerate(dp)]return min(costs)

提交代码评测得到:耗时5046ms,占用内存25.3MB。

4. 题目四

给出题目四的试题链接如下:

  • 2736. Maximum Sum Queries

这道题我放弃了,实在是毫无思路……

如果有大佬知道怎么做的话请务必赐教一下,感激不尽!


http://www.ppmy.cn/news/331830.html

相关文章

RabbitMQ - 死信队列,延时队列

Time-To-Live and Expiration — RabbitMQ 一、死信队列 Dead Letter Exchanges — RabbitMQ 死信队列&#xff1a; DLX 全称&#xff08;Dead-Letter-Exchange&#xff09;,称之为死信交换器&#xff0c;当消息变成一个死信之后&#xff0c;如果这个消息所在的队列存在x-d…

stm32f4xx-ADC

文章目录 一、定义二、模数转换过程三、ADC1.精度的理解2.原理图&#xff1a;3.存储对齐方式&#xff1a;4.ADC采集时间5.stm32通道组6.ADC1的通道5&#xff08;PA5)进行单次转化 四、test 一、定义 ADC&#xff0c;Analog-to-Digital Converter的缩写&#xff0c;指模/数转换…

TMS320F28xx ADC转换图解

ADC模块框图ADC Module Block Diagram 说明&#xff1a; 左上角为ADC的核心模块&#xff0c;实现AD转换功能。左下角为参考电压选择模块右上角为模数封装逻辑。 其中&#xff1a; 核心部分为采样保持电路&#xff08;S/H Circuit&#xff09;和AD转换器。有16路启动转换&…

stm32+LCD12864+ADC实现将ADC采样的值实时显示

前言 这篇文章以上一篇文章为基础&#xff0c;着重讲如何将ADC采样得到的值显示在LCD12864上面&#xff0c;关于如何点亮LCD屏幕&#xff0c;以及实物硬件连线图、原理&#xff0c;请参考之前一篇文章。加上上一篇文章&#xff0c;这算是一个十分迷你的项目了~还有一个比较常用…

TI的DRV8841可以被国产电机驱动芯片TMI8263所取代

自2018年1月以来&#xff0c;电机驱动芯片处于持续涨价的状态&#xff0c;涨幅甚至高达15%-20%&#xff0c;并且供货期货期短则14周长则30周。为了降低设计成本&#xff0c;第一时间设计出优秀的产品占据市场高位。笔者推荐拓尔微使用国产电机驱动芯片进行替换设计。拓尔微电子…

TMS320F28374S之DAC

介绍 DAC 模块由一个内部 12 位 DAC 和一个能够驱动外部负载的模拟输出缓冲器组成。 DAC 输出上的集成下拉电阻有助于在禁用输出缓冲器时提供已知的引脚电压。 这个下拉电阻不能被禁用&#xff0c;并且仍然作为引脚上的无源组件&#xff0c;即使对于其他共享的 pinmux 功能也是…

震旦ad369s_震旦ad369s驱动

震旦 AD369s是一款集复印、打印、扫描为一体的多功能一体机&#xff0c;在使用打印机之前需要安装震旦 AD369s对应的驱动&#xff0c;小编提供的驱动能够为用户解决打印机无法被连接或者无法被识别等问题&#xff0c;安装后打印机就可以打印了! 安装说明 1、先选择解压路径&…

K_A11_001 基于STM32等单片机驱动DHT11 串口与OLED0.96双显示

K_A11_001 基于STM32等单片机驱动DHT11 串口与OLED0.96双显示 一、资源说明二、基本参数1.参数2.引脚说明 三、驱动说明时序对应程序: 四、部分代码说明1、接线说明1.1、STC89C52RCDHT11模块1.2、STM32F103C8T6DHT11模块 五、基础知识学习与相关资料下载六、视频效果展示与程序…