自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 1483. 树节点的第 K 个祖先

在这里,不需要去枚举每一个的跳数,我们可以每一跳选择一定的步数,然后多跳几步,这样可以节省空间。然后,我们就可以把这个数跳1,然后将这个数改为跳1步的数,此时,将二进制数变为100。在选择最右边的1,跳1步, 然后将这个数改为跳1步的数,此时二进制的数变为0,结束循环。// 返回 -1 因为不存在满足要求的祖先节点。// 返回 0 ,它是 5 的祖父节点。// 返回 1 ,它是 3 的父节点。// dp[i][j]表示从i节点跳j步到达的节点。个祖先节点是从该节点到根节点路径上的第。

2024-04-06 10:31:03 470 1

原创 蓝桥杯----分组

具体的,假设分成了 k 个组,第 i 组最高的人身高是 Hxi​ ,最矮的是 Hni​,你被要求最小化表达式: max⁡1≤i≤k max​(Hxi​−Hni​)。蓝桥小学要进行弹弹球游戏,二年级一班总共有 n 个同学,要求分成 k 个队伍,由于弹弹球游戏要求队员的身高差不能太大,小蓝是班长,他对这个事情正在发愁,他想问你,如何最小化每个组之间的身高极差。在这里,去枚举答案,答案的最大值是height[n-1]-height[0],如果有小得不能再小了,就是最后的答案。输出一个整数,代表最小值。

2024-04-05 20:24:11 399 1

原创 蓝桥杯-最小权值

现在,可以循环调用左子树的数量,左子树可以为0-n-1(这里n为结点树,那么右结点的个树就可以得到)。在这里,左子树和右子树交换的结果不一样,所以都要枚举,然后计算其最小。然后通过迭代得到2021颗结点。如果一个结点 v 有左子树 L, 右子树 R,分别有 C(L) 和 C(R) 个结点,则。小蓝想知道,对于一棵有 2021 个结点的二叉树,树的权值最小可能是多少?规律就是,将一棵树可以有左子树,右子树和根节点。树的权值定义为树的根结点的权值。空子树的权值为 0。

2024-04-02 14:16:21 313 1

原创 518. 零钱兑换 II

当用动态规划时,发现了错误,递归的边界条件边界有问题,并不是account为0,就是一种方法数。因为此时position还可能没有列举完全,导致列举的数量不足。修改边界条件,当且只要position到达数组尾,并且account刚好为0,才是一种方法数。请你计算并返回可以凑成总金额的硬币组合数。在上一篇博客提到,其实最后的枚举累加是没有必要的,我们可以让前一个数代替枚举累加。在这个时候,其实递归结束条件是有问题的,不过报的是超时。只用面额 2 的硬币不能凑成总金额 3。表示不同面额的硬币,另给一个整数。

2024-03-25 17:49:26 407 1

原创 2617. 网格图中最少访问的格子数

结果还是超时,在这里,我们发现每一次枚举最小值是不必要的,要是在求出dp的同时能存储在某个区间的值,时间复杂度是O(1),就可以解决问题了。可以利用线段树来实现。需要经过的最少移动格子数,如果无法到达右下角格子,请你返回。然后用记忆化搜索,就是用一个数组将不必要的递归不需要进行。上图展示了到达右下角格子经过的 4 个格子。上图展示了到达右下角格子经过的 3 个格子。结果还是超时,然后将记忆化搜索改为动态规划。题解:这道题递归很好写,直接枚举就行。无法到达右下角格子。

2024-03-22 17:39:31 442 1

原创 2671. 频率跟踪器

/ 返回 true ,因为 3 出现 2 次。// 返回 true ,因为 3 出现 1 次。// 返回 false ,因为数据结构为空。// 返回 false ,因为数据结构为空。// 数据结构现在包含 [3, 3]请你设计并实现一个能够对其中的值进行跟踪的数据结构,并支持对频率相关查询进行应答。// 数据结构现在包含 [3]// 数据结构现在包含 [1]// 数据结构现在包含 [3]题解:使用一个map记录key:记录数字,value:记录数字出现的次数。一个记录数字与频率,一个记录频率与数字列表。

2024-03-21 09:50:01 482

原创 Importerror cannot import name ‘Iterable‘ from ‘collections‘

这是python3.10以上Iterable不包含在collections,而是collections.abc中,如果在不更换版本的情况下,修改两个python源码。

2024-03-20 15:20:06 384 1

原创 1969. 数组元素的最小非零乘积

现在我们增加一个数,例如,(a+c-1)*b*c=abc+bcc-bc,a(b+c-1)c = abc+acc-ac,ab(c+b-1) = abc+abb-ac,可以看出我们当我们增加最大值时,增加了abb-ac,是最小的,所以我们增大最大的。现在我们减少一个数,例如,(a-(a-1))*b*c = bc,当我们减少b-1时,ac=ac,当我们减少c-1时,ab=ab,可以看出我们当我们缩小最小值时,缩小了abc-bc,是最大的,所以我们缩小最小的。我们要减少一个2的 幂数,增加一个数。

2024-03-20 10:14:07 944 1

原创 1793. 好子数组的最大分数

给你一个整数数组nums和一个整数k。一个子数组(i, j)的定义为。一个子数组的两个端点下标需要满足。请你返回子数组的最大可能。15最优子数组的左右端点下标是 (1, 5) ,分数为 min(4,3,7,4,5) * (5-1+1) = 3 * 5 = 15。20最优子数组的左右端点下标是 (0, 4) ,分数为 min(5,5,4,5,4) * (4-0+1) = 4 * 5 = 20。

2024-03-19 09:45:25 299

原创 303. 区域和检索 - 数组不可变

给定一个整数数组numsleftrightleftrightnums实现NumArraynumsnumsleftrightleftright。

2024-03-18 08:55:13 580

原创 leetcode 周赛题

i++)i >= n;

2024-03-17 16:04:09 1745

原创 310. 最小高度树

官方解答是先证明树中的最长两个结点,根节点一定在这两个结点的路径上。在此就不贴官方代码了,大家感兴趣的可以去看看。树是一个无向图,其中任何两个顶点只通过一条路径连接。换句话说,一个任何没有简单环路的连通图都是一棵树。如图所示,当根是标签为 1 的节点时,树的高度是 1 ,这是唯一的最小高度树。是指根节点和叶子节点之间最长向下路径上边的数量。在所有可能的树中,具有最小高度的树(即,可选择树中任何一个节点作为根。列表(每一个边都是一对标签),其中。作为根节点时,设结果树的高度为。返回它们的根节点标签列表。

2024-03-17 15:37:07 331 1

原创 LEETCODE 2684. 矩阵中移动的最大次数

(row, col)给你一个下标从开始、大小为m x n的矩阵grid,矩阵由若干整数组成。你可以从矩阵第一列中的单元格出发,按以下方式遍历grid(row, col)返回你在矩阵中能够的次数。3可以从单元格 (0, 0) 开始并且按下面的路径移动:可以证明这是能够移动的最大次数。0从第一列的任一单元格开始都无法移动。(row, col)

2024-03-16 10:04:28 331 1

原创 LeetCode 2312.卖木头

给你两个整数m和n,分别表示一块矩形木块的高和宽。同时给你一个二维整数数组prices,其中表示你可以以pricei元的价格卖一块高为hi宽为wi的矩形木块。在将一块木块切成若干小木块后,你可以根据prices卖木块。你可以卖多块同样尺寸的木块。你不需要将所有小木块都卖出去。你旋转切好后木块的高和宽。请你返回切割一块大小为m x n的木块后,能得到的钱数。注意你可以切割木块任意次。19上图展示了一个可行的方案。包括:- 2 块 2 x 2 的小木块,售出 2 * 7 = 14 元。

2024-03-15 20:02:32 1411 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除