【力扣hot100】刷题笔记Day24

前言

  • 组会前一点不慌,反正跑不出好东西,能应付就行,早上直接刷题

70. 爬楼梯 - 力扣(LeetCode)

  • 动态规划

    • class Solution:def climbStairs(self, n: int) -> int:dp = [0] * (n+1)   # dp[n]表示爬n阶楼梯需要多少格dp[0] = 1          # 0格和1格初始化为1dp[1] = 1   for i in range(2, n+1):dp[i] = dp[i-1] + dp[i-2]   # dp[i-1]爬一格 + dp[i-2]爬两格return dp[n]

118. 杨辉三角 - 力扣(LeetCode)

  • 动态规划
    • class Solution:def generate(self, numRows: int) -> List[List[int]]:res = []for i in range(numRows):res.append([1] * (i + 1))  # 初始化杨辉三角为1for i in range(2, numRows):for j in range(1, i):res[i][j] = res[i-1][j-1] + res[i-1][j]  # 等于上面两个元素相加return res

198. 打家劫舍 - 力扣(LeetCode)

  • 动态规划

    • class Solution:def rob(self, nums: List[int]) -> int:n = len(nums)if n == 1: return nums[0]                  # 只有一家直接偷dp = [0] * n                               # dp[n-1]表示到第n家能偷到的最高金额dp[0] = nums[0]                            # dp[0]第1家直接偷dp[1] = max(nums[0], nums[1])              # dp[1]取最多的一家for i in range(2, n):dp[i] = max(dp[i-2]+nums[i], dp[i-1])  # 前一家/前前家和当前家取最大return dp[n-1]

 279. 完全平方数 - 力扣(LeetCode)

  • 动态规划

    • class Solution:def numSquares(self, n: int) -> int:dp = [float('inf')] * (n + 1)   # dp[n]表示和为n的完全平方数的最少数量dp[0] = 0                       # 除了dp[0]其他初始化为整数最大方便取minfor i in range(1, n+1):for j in range(1, i+1):  # 遍历小于等于i的完全平方数j*jif j * j > i: break  # 保证j*j<=idp[i] = min(dp[i], dp[i - j * j] + 1)  # 更新最小数return dp[n]
  • 数学:四平方和定理

    • class Solution:def numSquares(self, n: int) -> int:# 判断是否为完全平方数def is_square(num):sqrt_num = int(math.sqrt(num))return sqrt_num * sqrt_num == num# 根据四平方和定理判断最少需要几个完全平方数的和(上界就是四个)# 如果 n = 4^k * (8 * m + 7),可表示为四个平方数和while n % 4 == 0:n //= 4if n % 8 == 7:return 4# 如果本身是平方数,则为一个平方数if is_square(n):return 1# 遍历(1,√n),判断n是否为a^2 + b^2,两个平方数for i in range(1, int(math.sqrt(n)) + 1):if is_square(n - i*i):return 2# 其他情况就是三个平方数return 3

322. 零钱兑换 - 力扣(LeetCode)

  • 动态规划

    • class Solution:def coinChange(self, coins: List[int], amount: int) -> int:dp = [float('inf')] * (amount + 1)   # dp[n]表示凑成n最少硬币数dp[0] = 0                            # dp[0]初始化为0for i in range(1, amount + 1):     for j in range(len(coins)):if i >= coins[j]:            # 如果有可用硬币dp[i] = min(dp[i], dp[i - coins[j]] + 1)  # 更新最小值为:用掉该硬币的最少硬币数 + 1if dp[amount] != float('inf'): return dp[amount]  # 如果更新过,返回结果else: return -1   # 如果没更新过,说明没有可用硬币,返回-1

 后言

  • 干饭去咯!下午组会挺住压力!!!!

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

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

相关文章

npm run dev(pnpm run dev) 的过程都做了什么?

pnpm run dev 命令执行的过程通常涉及以下步骤: 解析命令: 当你在项目中运行 pnpm run dev 时,pnpm 首先会查找项目根目录下的 package.json 文件。在这个文件的 scripts 字段里,它会找到名为 "dev" 的脚本定义。执行脚本: 根据 package.json 中 "dev"…

no main manifest attribute, in demo.jar的原因和解决办法

一、问题描述 当我们用java -jar demo.jar --httpPorts8081打算启动我们的jar文件时&#xff0c;系统给出了题目中的错误提示&#xff1a; no main manifest attribute, in demo.jar 二、问题分析 根据提示&#xff0c;很明显是说找不到main入口&#xff0c;为什么是这样呢&a…

sql执行计划需要关注那些内容?

执行explain会返回那些字段(加粗标红为主要关注字段)&#xff1f; 1、id&#xff1a;执行计划中每个操作的唯一标识&#xff0c;多表联查的时候会出现多条数据id是一样的 2、select_type&#xff1a;查询类型&#xff0c;常见类型有&#xff1a;SIMPLE、PRIMARY、UNION、SUBQUE…

什么是 Golang 类型断言

类型断言&#xff1a;用于检查某个接口是否包含某个具体类型&#xff0c;语法x.(T)&#xff0c;x是一个接口类型表达式&#xff0c;T是具体的类型&#xff0c;如果x包含的值可以被转换成T类型&#xff0c;则是ok 在Go语言中&#xff0c;任何类型的值都属于空接口类型。空接口类…

pytest测试框架使用基础06 fixture——parametrize

pytest.mark.parametrize 允许在测试函数或类中定义多组参数和 fixtures。 参数化场景&#xff1a; 只有测试数据和预期结果不一样&#xff0c;但操作步骤是一样的测试用例是可以用上参数化的。 创建test_cases02.py文件 示例一&#xff1a;未参数化 1.脚本代码&#xff1a; #…

nginx代理参数proxy_pass

proxy_pass参数用于配置反向代理&#xff0c;指定客户端请求被转发到后端服务器&#xff0c;后端地址可以是域名、ip端口URI 代理后端报错提示本地找不到CSS文件、JavaScript文件或图片 例如&#xff1a; nginx &#xff1a;10.1.74.109 后端服务&#xff1a;http://10.1.74.…

「MyBatis」MyBatis面试宝典:全面解析常见问题和难点

这里写目录标题 1. 什么是mybatis&#xff1f;2.怎么理解持久层&#xff1f;3. 说一说Mybaits的优点和缺点4. #{}和${}的区别是什么&#xff1f;5. PreparedStatement类6. mybatis的一级缓存和二级缓存7. Mybatis中 Dao接口和XML文件的SQL如何建立关联 面试题-》&#xff1a;My…

Hive Thrift Server

hive-site.xml配置文件 <property><name>hive.server2.thrift.bind.host</name><value>node1</value> </property>hive.server2.thrift.bind.host: This property determines the host address to which the HiveServer2 Thrift service …

pyqt学习网站

PySide 6.PyQt 6快速开发与实战最新章节_孙洋洋著_掌阅小说网 PyQt6开发及实例 - 知乎 Python开发GUI常用库PyQt6和PySide6介绍之一&#xff1a;简介与安装_pyside6 pyqt-CSDN博客 Qt for Python

HBase 的安装与部署

目录 1 启动 zookeeper2 启动 Hadoop3 HBase 的安装与部署4 HBase 高可用 1 启动 zookeeper [huweihadoop101 ~]$ bin/zk_cluster.sh start2 启动 Hadoop [huweihadoop101 ~]$ bin/hdp_cluster.sh start3 HBase 的安装与部署 &#xff08;1&#xff09;将 hbase-2.0.5-bin.tar.…

视频压缩会影响画质吗?正确答案在这里!

在当今数字时代&#xff0c;我们生活在一个高清、甚至是4K视频的世界中。随之而来的是巨大的视频文件大小&#xff0c;这在存储、传输和分享方面都带来了一些挑战。为了解决这一问题&#xff0c;许多人转向视频压缩&#xff0c;以便更有效地管理和共享视频内容。 然而&#xf…

c++ Windows获取软件安装列表信息

链接 #include <windows.h> #include <stdio.h> #include <iostream> #include <vector>using namespace std;#ifndef MSVCR #define _T #define _tcscpy strcpy #define _stprintf sprintf #define _tcscmp strcmp #endifclass SetupSoftInfo { publ…

嵌入式开发的常用软件、学习资源网站推荐

1、软件推荐 1.1、文本编辑软件 ——Notepad 1、适合编写和查看文本文件&#xff0c;也可以安装插件来查看二进制文件、对比文件 2、参考博客&#xff1a;《Notepad实用小技巧》&#xff1b; 1.2、PDF文件阅读软件——福昕PDF阅读器 福昕PDF阅读器&#xff0c;在官网就可以下载…

「Vue3系列」Vue3 混入(mixins)

文章目录 一、Vue3 混入二、Vue3 混入-选项合并1. 数据对象&#xff08;Data&#xff09;2. 方法&#xff08;Methods&#xff09;3. 计算属性&#xff08;Computed&#xff09;4. 侦听器&#xff08;Watchers&#xff09;5. 生命周期钩子&#xff08;Lifecycle Hooks&#xff…

终于用上最新的Claude-3-opus和Claude-3-sonnet!

3 月 4 日&#xff0c;被称为 OpenAI 最强竞争对手的大模型公司 Anthropic 宣布推出 Claude3 系列模型&#xff0c;与 Gemini 类似&#xff0c;模型按照大小分为三个&#xff1a;Claude 3 Haiku、Claude 3 Sonnet 和 Claude 3 Opus。Opus 目前在官方发布的测试成绩中全方位超越…

信息安全与阿里云等保三级方案实践总结

信息安全在当今数字化时代变得至关重要&#xff0c;企业和组织需要采取有效措施来保护其数据和信息资产。阿里云作为中国领先的云服务提供商&#xff0c;提供了等保三级方案&#xff0c;帮助用户满足国家信息安全等级保护的要求。本文将探讨信息安全和阿里云等保三级方案的重要…

FPGA——三速自适应以太网设计(1)基本模块

FPGA——以太网设计&#xff08;1&#xff09;基本模块 1. 协议解析&#xff08;1&#xff09;MAC层&#xff08;2&#xff09;IP层 和 ARP层&#xff08;3&#xff09;UDP层 和 ICMP层 2.1 MAC接收模块2.2 MAC发送模块3.1 IP接收模块3.2 IP发送模块4.1 UDP接收模块4.2 UDP发送…

密码是“1234”,德国军事机密被窃

近日&#xff0c;德国军方高层秘密会议录音遭窃听&#xff0c;这段敏感音频的泄露令德国国防部陷入危机。 这段录音也在德国联邦国防军内部流传&#xff0c;多名士兵确认了录音的真实性。 报道称&#xff0c;俄罗斯社交网络上确实流传着一段时长半小时的视频会议录音。它是由…

Flask入门三(Flask-session的使用、数据库链接池、wtforms、Flask定制命令、Flask-Cache)

文章目录 一、Flask-session使用1.使用方式一2.使用方式二3.读RedisSessionInterface源码4.flask-session补充 二、数据库连接池1.flask中使用mysql2.上述问题解决 使用数据库连接池1.第三方数据库连接池2.操作数据库不带池版3.池版和非池版压测 三、wtforms四、Flask定制命令1…

Excel中怎么求排名

使用Rank函数 1.在需要显示排名的单元格内&#xff0c;输入“RANK&#xff08;数值&#xff0c;数值列表&#xff0c;排序方式&#xff09;” 2.将“数值”替换为需要计算排名的单元格的地址&#xff0c;例如E2单元格。 3.将“数值列表”替换为排名的数值范围&#xff0c;例…