LeetCode
文章平均质量分 55
春树穆云
这个作者很懒,什么都没留下…
展开
-
leetcode:多米诺和托米诺平铺
有两种形状的瓷砖:一种是 2 x 1 的多米诺形,另一种是形如 "L" 的托米诺形。两种形状都可以旋转。给定整数 n ,返回可以平铺 2 x n 的面板的方法的数量。返回对 109 + 7 取模 的值。平铺指的是每个正方形都必须有瓷砖覆盖。两个平铺不同,当且仅当面板上有四个方向上的相邻单元中的两个,使得恰好有一个平铺有一个瓷砖占据两个正方形。转载 2022-11-12 09:43:28 · 181 阅读 · 1 评论 -
leetcode:判断字符串的两半是否相等
两个字符串 相似 的前提是它们都含有相同数目的元音('a','e','i','o','u','A','E','I','O','U')。注意,s 可能同时含有大写和小写字母。给你一个偶数长度的字符串 s。将其拆分成长度相同的两半,前一半为 a ,后一半为 b。如果 a 和 b 相似,返回 true;否则,返回 false。原创 2022-11-11 10:25:30 · 234 阅读 · 0 评论 -
leetcode:获取所有钥匙的最短路径
一、题目给定一个二维网格grid,其中:'.'代表一个空房间 '#'代表一堵 '@'是起点 小写字母代表钥匙 大写字母代表锁我们从起点开始出发,一次移动是指向四个基本方向之一行走一个单位空间。我们不能在网格外面行走,也无法穿过一堵墙。如果途经一个钥匙,我们就把它捡起来。除非我们手里有对应的钥匙,否则无法通过锁。假设 k为 钥匙/锁 的个数,且满足1 <= k<= 6,字母表中的前k个字母在网格中都有自己对应的一个小写和一个大写字母。换言之,每个锁有唯一对转载 2022-11-10 08:36:10 · 205 阅读 · 0 评论 -
leetcode:最大加号标志
因此,我们可以预处理出每个位置上下左右四个方向上连续的 11 的个数,然后遍历所有的 (i, j)(i,j),求出 dp[i][j]dp[i][j] 的最大值即可。一个 k 阶由 1 组成的 “轴对称”加号标志 具有中心网格 grid[r][c] == 1 ,以及4个从中心向上、向下、向左、向右延伸,长度为 k-1,由 1 组成的臂。我们定义 dp[i][j]dp[i][j] 表示以 (i, j)(i,j) 为中心的最大加号标志的阶数,答案即为所有 dp[i][j]dp[i][j] 的最大值。转载 2022-11-09 13:06:15 · 107 阅读 · 0 评论 -
leetcode:统计一致字符串的数目
给你一个由不同字符组成的字符串allowed和一个字符串数组words。如果一个字符串的每一个字符都在 allowed中,就称这个字符串是 一致字符串 。请你返回words数组中一致字符串 的数目。原创 2022-11-08 11:12:37 · 130 阅读 · 0 评论 -
leetcode:模糊坐标
我们有一些二维坐标,如"(1, 3)"或"(2, 0.5)",然后我们移除所有逗号,小数点和空格,得到一个字符串S。返回所有可能的原始字符串到一个列表中。原始的坐标表示法不会存在多余的零,所以不会出现类似于"00", "0.0", "0.00", "1.0", "001", "00.01"或一些其他更小的数来表示坐标。此外,一个小数点前至少存在一个数,所以也不会出现“.1”形式的数字。最后返回的列表可以是任意顺序的。而且注意返回的两个数字中间(逗号之后)都有一个空格。转载 2022-11-07 09:58:21 · 58 阅读 · 0 评论 -
leetcode:设计Goal解析器
请你设计一个可以解释字符串 command 的 Goal 解析器 。command 由 "G"、"()" 和/或 "(al)" 按某种顺序组成。Goal 解析器会将 "G" 解释为字符串 "G"、"()" 解释为字符串 "o" ,"(al)" 解释为字符串 "al" 。然后,按原顺序将经解释得到的字符串连接成一个字符串。给你字符串 command ,返回 Goal 解析器 对 command 的解释结果。原创 2022-11-06 10:23:11 · 199 阅读 · 0 评论 -
leetcode:解析布尔表达式
一、题目给你一个以字符串形式表述的布尔表达式(boolean)expression,返回该式的运算结果。有效的表达式需遵循以下约定:"t",运算结果为True "f",运算结果为False "!(expr)",运算过程为对内部表达式expr进行逻辑非的运算(NOT) "&(expr1,expr2,...)",运算过程为对 2 个或以上内部表达式expr1, expr2, ...进行逻辑与的运算(AND) "|(expr1,expr2,...)",运算过程为对原创 2022-11-05 11:38:25 · 248 阅读 · 0 评论 -
leetcode:到达最终点数字
一、题目在一根无限长的数轴上,你站在0的位置。终点在target的位置。你可以做一些数量的移动numMoves:每次你可以选择向左或向右移动。 第i次移动(从 i == 1开始,到i == numMoves),在选择的方向上走i步。给定整数target,返回到达目标所需的最小移动次数(即最小numMoves)。二、思路三、代码class Solution: def reachNumber(self, target: int) -&g转载 2022-11-04 10:16:06 · 57 阅读 · 0 评论 -
leetcode:最大重复子字符串
给你一个字符串sequence,如果字符串word连续重复k次形成的字符串是sequence的一个子字符串,那么单词word的重复值为k。单词word的最大重复值是单词word在sequence中最大的重复值。如果word不是sequence的子串,那么重复值k为0。给你一个字符串sequence和word,请你返回最大重复值k。原创 2022-11-03 12:04:56 · 100 阅读 · 0 评论 -
leetcode:网络信号最好的坐标
一、题目给你一个数组towers和一个整数radius。数组towers 中包含一些网络信号塔,其中towers[i] = [xi, yi, qi]表示第i个网络信号塔的坐标是(xi, yi)且信号强度参数为qi。所有坐标都是在 X-Y 坐标系内的整数坐标。两个坐标之间的距离用欧几里得距离计算。整数radius表示一个塔能到达的最远距离。如果一个坐标跟塔的距离在radius以内,那么该塔的信号可以到达该坐标。在这个范围以外信号会很微弱,所以原创 2022-11-02 14:04:28 · 107 阅读 · 0 评论 -
leetcode:检查两个字符串是否相等
给你两个字符串数组 word1 和 word2 。如果两个数组表示的字符串相同,返回 true ;否则,返回 false 。数组表示的字符串是由数组中的所有元素 按顺序 连接形成的字符串。原创 2022-11-01 10:04:18 · 219 阅读 · 0 评论 -
leetcode:神奇字符串
A magical string s consists of only '1' and '2' and obeys the following rules:转载 2022-10-31 12:43:03 · 83 阅读 · 0 评论 -
leetcode:字母大小写全排列
给定一个字符串s,通过将字符串s中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。以任意顺序返回输出。原创 2022-10-30 12:15:50 · 370 阅读 · 0 评论 -
leetcode:统计匹配检索规则的物品数量
给你一个数组 items ,其中items[i] = [typei, colori, namei] ,描述第 i 件物品的类型、颜色以及名称。另给你一条由两个字符串ruleKey 和 ruleValue 表示的检索规则。如果第 i 件物品能满足下述条件之一,则认为该物品与给定的检索规则 匹配 :ruleKey == "type" 且 ruleValue == typei 。ruleKey == "color" 且 ruleValue == colori 。ruleKey == "name原创 2022-10-29 12:22:00 · 130 阅读 · 0 评论 -
leetcode:子数组的最小值之和
给定一个整数数组 arr,找到 min(b)的总和,其中 b 的范围为 arr 的每个(连续)子数组。由于答案可能很大,因此 返回答案模 10^9 + 7 。转载 2022-10-28 11:27:17 · 430 阅读 · 0 评论 -
leetcode:数组元素积的符号
已知函数signFunc(x) 将会根据 x 的正负返回特定值:如果 x 是正数,返回 1 。如果 x 是负数,返回 -1 。如果 x 是等于 0 ,返回 0 。给你一个整数数组 nums 。令 product 为数组 nums 中所有元素值的乘积。返回 signFunc(product)原创 2022-10-27 16:36:26 · 888 阅读 · 0 评论 -
leetcode:和至少为的最短子数组
给你一个整数数组 nums 和一个整数 k ,找出 nums 中和至少为 k 的 最短非空子数组 ,并返回该子数组的长度。如果不存在这样的 子数组 ,返回 -1 。子数组 是数组中 连续 的一部分。转载 2022-10-26 12:15:29 · 156 阅读 · 0 评论 -
leetcode:最短的桥
给你一个大小为 n x n 的二元矩阵 grid ,其中 1 表示陆地,0 表示水域。岛是由四面相连的 1 形成的一个最大组,即不会与非组内的任何其他 1 相连。grid 中 恰好存在两座岛 。你可以将任意数量的 0 变为 1 ,以使两座岛连接起来,变成 一座岛 。返回必须翻转的 0 的最小数目。原创 2022-10-25 10:49:50 · 75 阅读 · 0 评论 -
leetcode:分割数组
给定一个数组nums,将其划分为两个连续子数组left和right转载 2022-10-24 21:27:56 · 335 阅读 · 0 评论 -
交替合并字符串
给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回 合并后的字符串转载 2022-10-23 16:27:32 · 475 阅读 · 0 评论