自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 完美矩形

精确覆盖意味着:矩形区域中不能有空缺,即矩形区域的面积等于所有矩形的面积之和;矩形区域中不能有相交区域。我们需要一个统计量来判定是否存在相交区域。由于精确覆盖意味着矩形的边和顶点会重合在一起,我们不妨统计每个矩形顶点的出现次数。同一个位置至多只能存在四个顶点,在满足该条件的前提下,如果矩形区域中有相交区域,这要么导致矩形区域四角的顶点出现不止一次,要么导致非四角的顶点存在出现一次或三次的顶点;因此要满足精确覆盖,除了要满足矩形区域的面积等于所有矩形的面积之和,还要满足矩形区域四角的顶点只能出现一

2021-11-16 15:39:14 431

原创 新的一天 灯泡开关

2021-11-15 10:05:23 193

原创 键盘的映射

2021-11-14 14:15:42 433

原创 2021-11-13 检测大写字母

据题目要求,若单词的大写用法正确,则需要满足:若第 11 个字母为大写,则其他字母必须均为大写或均为小写,即其他字母必须与第 22 个字母的大小写相同;若第 11 个字母为小写,则其他字母必须均为小写。根据以上规则,可以整理得到以下更简单的判断规则:无论第 11 个字母是否大写,其他字母必须与第 22 个字母的大小写相同;若第 11 个字母为小写,则需额外判断第 22 个字母是否为小写。作者:LeetCode-Solution链接:https://leetcode-cn.com/p

2021-11-13 09:36:50 246

原创 2021-11-12 猜数字大小

2021-11-12 09:29:38 244

原创 K个逆序对数组

思路与算法我们可以用动态规划的方法来解决本题。设 f[i][j]f[i][j] 表示我们使用数字 1, 2, \cdots, i1,2,⋯,i 的排列构成长度为 ii 的数组,并且恰好包含 jj 个逆序对的方案数。在进行状态转移时,我们可以考虑第 ii 个元素选取了 1, 2, \cdots, i1,2,⋯,i 中的哪个数字。假设我们选取了数字 kk,那么数组的前 i-1i−1 个元素由 1, \cdots, k-11,⋯,k−1 以及 k+1, \cdots, ik+1,⋯,i 的某个排列构成

2021-11-11 15:06:05 371

原创 20201110提莫攻击

2021-11-10 15:57:38 345

转载 2021-11-09 祖玛游戏

2021-11-09 18:38:16 193

转载 猜数字游戏

2021-11-08 16:53:12 42

转载 范围求和

2021-11-07 16:40:15 36

转载 丢失的数字

2021-11-06 16:13:12 36

转载 最长定差子序列

2021-11-05 19:36:50 75

原创 第九天 有效的完全平方数

思路和算法根据完全平方数的性质,我们只需要直接判断num 的平方根 xx 是否为整数即可。对于不能判断浮点数的值是否等于整数的语言,则可以通过以下规则判断:若num为正整数,则有……。来源:力扣(LeetCode)...

2021-11-04 10:00:54 32

原创 2021-11-03第八天 接雨水

我们假设初始时矩阵的每个格子都接满了水,且高度均为 \textit{maxHeight}maxHeight,其中 \textit{maxHeight}maxHeight 为矩阵中高度最高的格子。我们知道方块接水后的高度为 \textit{water}[i][j]water[i][j],它的求解公式与方法一样。方块 (i,j)(i,j) 的接水后的高度为:\textit{water}[i][j] = \max(\textit{heightMap}[i],\min(\textit{water}[i-1][j

2021-11-03 16:25:54 44

原创 第七天 删除链表中的节点

删除链表中的节点的常见的方法是定位到待删除节点的上一个节点,修改上一个节点的 \textit{next}next 指针,使其指向待删除节点的下一个节点,即可完成删除操作。这道题中,传入的参数 \textit{node}node 为要被删除的节点,无法定位到该节点的上一个节点。注意到要被删除的节点不是链表的末尾节点,因此 \textit{node}.\textit{next}node.next 不为空,可以通过对 \textit{node}node 和 \textit{node}.\textit{next

2021-11-02 13:22:15 38

原创 2021-11-01第六天 分糖果

暴力法非常简单。我们可以生成代表糖果的给定 numsnums 数组的所有排列,并确定所生成数组前半部分中唯一元素的数目。为了确定数组前半部分中唯一元素的数目,我们将所有需要的元素放在一个集合中,并计算集合中元素的数目。我们在生成的数组的前半部分中为所有可能的排列计算这样的唯一元素,并返回最大集合的大小。...

2021-11-01 11:30:01 46

原创 第五天 键盘行

解题思路先把26个字母进行编码,同一行的编码一致每个字母对应一个数组下标比如 a 对应 index = 0,z 对应 index = 23对于每个单词,挨个遍历,计算他们的编码注意单词的大小写,将字符转成数组的下标进行获取编码比如 a 要转成 index = 0, 可以用 ord(w) - ord('a'), ord()ord()函数可以返回一个字符对应的ASCII编码,再减去 aa 的ASCII编码即可获得对应的index如果每个字母的编码都一致,就放到最终结果里。...

2021-10-31 16:28:32 32

原创 第四天 只出现一次的数字

解题思路:我们可以使用一个哈希映射统计数组中每一个元素出现的次数。在统计完成后,我们对哈希映射进行遍历,将所有只出现了一次的数放入答案中。

2021-10-30 11:49:15 38

原创 第三天 路径交叉

思路和算法根据归纳结果,我们发现当不出现路径交叉时,只可能有以下三种情况:第 11 种情况:对于每一次移动 ii,第 ii 次移动距离都比第 i-2i−2 次移动距离更长,例如归纳中的 3-33−3、4-94−9、5-85−8 和 6-86−8。第 22 种情况:对于每一次移动 ii,第 ii 次移动距离都比第 i-2i−2 次移动距离更短,即归纳中的 3-13−1 具有的性质。第 33 种情况:对于每一次移动 i < ji<j,都满足第 11 种情况;对于每一次移动 i >

2021-10-29 10:12:43 67

原创 第二天 重新排序得到二的幂

解题思路:由于我们可以按任何顺序将数字重新排序,因此对于两个不同的整数 aa 和 bb,如果其十进制表示的字符数组,从小到大排序后的结果是相同的,那么若 aa 能够重排得到 22 的幂,bb 也可以;若 aa 不能重排得到 22 的幂,那么 bb 也不能。进一步地,只要 aa 和 bb 的十进制表示的字符数组中,从 \texttt{0}0 到 \texttt{9}9 每个字符的出现次数,在 aa 和 bb 中都是一样的,那么 aa 和 bb 能否重排得到 22 的幂的结果是一样的。一共 303.

2021-10-28 19:57:29 38

原创 2021-10-27第一天 删除无效的括号

思路与算法题目中所要求最少删除,这样的描述正是广度优先搜索算法应用的场景,并且题目也要求我们输出所有的结果。我们在进行广度优先搜索时每一轮删除字符串中的 11 个括号,直到出现合法匹配的字符串为止,此时进行轮转的次数即为最少需要删除括号的个数。我们进行广度优先搜索时,每次保存上一轮搜索的结果,然后对上一轮已经保存的结果中的每一个字符串尝试所有可能的删除一个括号的方法,然后将保存的结果进行下一轮搜索。在保存结果时,我们可以利用哈希表对上一轮生成的结果去重,从而提高效率。class Solutio

2021-10-27 20:42:30 36

空空如也

空空如也

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

TA关注的人

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