- 博客(950)
- 收藏
- 关注
原创 力扣 2325. 解密消息
例如,key = “happy boy”(实际的加密密钥会包含字母表中每个字母 至少一次),据此,可以得到部分对照表(‘h’ -> ‘a’、‘a’ -> ‘b’、‘p’ -> ‘c’、‘y’ -> ‘d’、‘b’ -> ‘e’、‘o’ -> ‘f’)。提取 “the quick brown fox jumps over the lazy dog” 中每个字母的首次出现可以得到替换表。提取 “eljuxhpwnyrdgtqkviszcfmabo” 中每个字母的首次出现可以得到替换表。解释:对照表如上图所示。
2023-02-01 19:56:32 521 1
原创 力扣 556. 下一个更大元素 III
给你一个正整数 n ,请你找出符合条件的最小整数,其由重新排列 n 中存在的每位数字组成,并且其值大于 n。如果不存在这样的正整数,则返回 -1。注意 ,返回的整数应当是一个 32 位整数 ,如果存在满足题意的答案,但不是 32 位整数 ,同样返回 -1。链接:https://leetcode.cn/problems/next-greater-element-iii。著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。来源:力扣(LeetCode)
2023-01-29 23:25:39 381
原创 力扣 1813. 句子相似性 III
比方说,sentence1 = “Hello my name is Jane” 且 sentence2 = “Hello Jane” ,我们可以往 sentence2 中 “Hello” 和 “Jane” 之间插入 “my name is” 得到 sentence1。解释:可以往 sentence2 中 “My” 和 “Haley” 之间插入 “name is” ,得到 sentence1。输入:sentence1 = “Eating right now”, sentence2 = “Eating”
2023-01-27 23:16:21 545
原创 力扣 2309. 兼具大小写的最好英文字母
链接:https://leetcode.cn/problems/greatest-english-letter-in-upper-and-lower-case。注意 ‘A’ 和 ‘F’ 的大写和小写形式也都出现了,但是 ‘R’ 比 ‘F’ 和 ‘A’ 更好。英文字母 b 比另一个英文字母 a 更好 的前提是:英文字母表中,b 在 a 之 后 出现。最好 英文字母的大写和小写形式必须 都 在 s 中出现。字母 ‘E’ 是唯一一个大写和小写形式都出现的字母。字母 ‘R’ 是大写和小写形式都出现的最好英文字母。
2023-01-27 18:34:18 673 1
原创 力扣 2299. 强密码检验器 II
它 不 包含 2 个连续相同的字符(比方说 “aab” 不符合该条件,但是 “aba” 符合该条件)。给你一个字符串 password ,如果它是一个 强 密码,返回 true,否则返回 false。解释:密码不包含数字,且包含 2 个连续相同的字符。至少包含 一个特殊字符。@#$%^&*()-+” 中的一个。输入:password = “Me+You–IsMyDream”解释:密码不符合长度要求。解释:密码满足所有的要求,所以我们返回 true。至少包含 一个小写英文 字母。至少包含 一个数字。
2023-01-26 21:53:15 849
原创 力扣 2303. 计算应缴税款总额
给你一个下标从 0 开始的二维整数数组 brackets ,其中 brackets[i] = [upperi, percenti] ,表示第 i 个税级的上限是 upperi ,征收的税率为 percenti。输入:brackets = [[3,50],[7,10],[12,25]], income = 10。输入:brackets = [[1,0],[4,25],[5,50]], income = 2。需要支付的税款总计 $1.50 + $0.40 + $0.75 = $2.65。
2023-01-26 17:20:55 488
原创 力扣 1807. 替换字符串中的括号内容
输入:s = “(name)is(age)yearsold”, knowledge = [[“name”,“bob”],[“age”,“two”]]输入:s = “(a)(a)(a)aaa”, knowledge = [[“a”,“yes”]]键 “name” 对应的值为 “bob” ,所以将 “(name)” 替换为 “bob”。键 “age” 对应的值为 “two” ,所以将 “(age)” 替换为 “two”。键 “a” 对应的值为 “yes” ,所以将所有的 “(a)” 替换为 “yes”。
2023-01-18 16:48:19 683 1
原创 力扣 2287. 重排字符形成目标字符串
注意,尽管下标 3 和 4 分别有额外的 ‘a’ 和 ‘b’ ,但不能重用下标 2 处的 ‘c’ ,所以无法形成 “abc” 的第 2 个副本。选取下标为 0 、3 、6 、9 和 12 的字符,可以形成 “aaaaa” 的 1 个副本。形成的字符串分别是 “ecod” 和 “code” ,都可以重排为 “code”。对于 “code” 的第 1 个副本,选取下标为 4 、5 、6 和 7 的字符。选取下标为 0 、1 和 2 的字符,可以形成 “abc” 的 1 个副本。来源:力扣(LeetCode)
2023-01-16 16:51:31 556
原创 力扣 2283. 判断一个数的数字计数是否等于数位的值
链接:https://leetcode.cn/problems/check-if-number-has-equal-digit-count-and-digit-value。如果对于 每个 0
2023-01-11 15:42:04 400
原创 力扣 2042. 检查句子中的数字是否递增
示例,“a puppy has 2 eyes 4 legs” 是一个由 7 个 token 组成的句子:“2” 和 “4” 是数字,其他像 “puppy” 这样的 tokens 属于单词。给你一个表示句子的字符串 s ,你需要检查 s 中的 全部 数字是否从左到右严格递增(即,除了最后一个数字,s 中的 每个 数字都严格小于它 右侧 的数字)。解释:s 中的数字是:7, 51, 50, 60。解释:句子中的数字是:1, 3, 4, 6, 12。解释:s 中的数字是:4, 5, 11, 26。
2023-01-04 17:29:59 356
原创 力扣 1801. 积压订单中的订单总数
如果该采购订单 buy 的价格 高于或等于 当前销售订单 sell 的价格,则匹配并执行这两笔订单,并将采购订单 buy 从积压订单中删除。如果该销售订单 sell 的价格 低于或等于 当前采购订单 buy 的价格,则匹配并执行这两笔订单,并将销售订单 sell 从积压订单中删除。输入:orders = [[7,1000000000,1],[15,3,0],[5,999999995,0],[5,1,1]]输入:orders = [[10,5,0],[15,2,1],[25,1,1],[30,4,0]]
2023-01-04 14:53:08 345
原创 力扣 2037. 使每位学生都有座位的最少移动次数
同时给你一个长度为 n 的数组 students ,其中 students[j] 是第 j 位学生的位置。增加或者减少第 i 位学生的位置,每次变化量为 1 (也就是将第 i 位学生从位置 x 移动到 x + 1 或者 x - 1)输入:seats = [4,1,5,9], students = [1,3,2,6]输入:seats = [2,2,6,6], students = [1,3,2,6]输入:seats = [3,1,5], students = [2,7,4]来源:力扣(LeetCode)
2023-01-01 17:34:33 656
原创 力扣 2351. 第一个出现两次的字母
链接:https://leetcode.cn/problems/first-letter-to-appear-twice。如果 a 的 第二次 出现比 b 的 第二次 出现在字符串中的位置更靠前,则认为字母 a 在字母 b 之前出现两次。字母 ‘c’ 是第一个出现两次的字母,因为在所有字母中,‘c’ 第二次出现的下标是最小的。给你一个由小写英文字母组成的字符串 s ,请你找出并返回第一个出现 两次 的字母。字母 ‘c’ 在下标 2 、3 和 7 处出现。只有字母 ‘d’ 出现两次,所以返回 ‘d’。
2023-01-01 15:30:47 627
原创 力扣 2032. 至少在两个数组中出现的值
给你三个整数数组 nums1、nums2 和 nums3 ,请你构造并返回一个 元素各不相同的 数组,且由 至少 在 两个 数组中出现的所有值组成。输入:nums1 = [1,1,3,2], nums2 = [2,3], nums3 = [3]输入:nums1 = [1,2,2], nums2 = [4,3,3], nums3 = [5]输入:nums1 = [3,1], nums2 = [2,3], nums3 = [1,2]解释:不存在至少在两个数组中出现的值。输出:[2,3,1]
2022-12-29 20:46:54 526
原创 力扣 1764. 通过连接另一个数组的子数组得到一个数组
解释:你可以分别在 nums 中选出第 0 个子数组 [1,-1,0,1,-1,-1,3,-2,0] 和第 1 个子数组 [1,-1,0,1,-1,-1,3,-2,0]。解释:选择子数组 [7,7,1,2,3,4,7,7] 和 [7,7,1,2,3,4,7,7] 是不正确的,因为它们不是不相交子数组。输入:groups = [[1,-1,-1],[3,-2,0]], nums = [1,-1,0,1,-1,-1,3,-2,0]著作权归领扣网络所有。[10,-2] 必须出现在 [1,2,3,4] 之前。
2022-12-29 20:42:30 268
原创 力扣 1764. 通过连接另一个数组的子数组得到一个数组
解释:你可以分别在 nums 中选出第 0 个子数组 [1,-1,0,1,-1,-1,3,-2,0] 和第 1 个子数组 [1,-1,0,1,-1,-1,3,-2,0]。解释:选择子数组 [7,7,1,2,3,4,7,7] 和 [7,7,1,2,3,4,7,7] 是不正确的,因为它们不是不相交子数组。输入:groups = [[1,-1,-1],[3,-2,0]], nums = [1,-1,0,1,-1,-1,3,-2,0]著作权归领扣网络所有。[10,-2] 必须出现在 [1,2,3,4] 之前。
2022-12-18 12:33:46 132
原创 力扣 1785. 构成特定和需要添加的最少元素
链接:https://leetcode.cn/problems/minimum-elements-to-add-to-form-a-given-sum。解释:可以将 -2 和 -3 添加到数组中,数组的元素总和变为 1 - 1 + 1 - 2 - 3 = -4。输入:nums = [1,-10,9,1], limit = 100, goal = 0。注意,如果 x >= 0 ,那么 abs(x) 等于 x;输入:nums = [1,-1,1], limit = 3, goal = -4。
2022-12-17 22:21:53 119
原创 力扣 1945. 字符串转化后的各位数字之和
首先,用字母在字母表中的位置替换该字母,将 s 转化 为一个整数(也就是,‘a’ 用 1 替换,‘b’ 用 2 替换,…链接:https://leetcode.cn/problems/sum-of-digits-of-string-after-convert。转化:“zbax” ➝ “(26)(2)(1)(24)” ➝ “262124” ➝ 262124。转换 #1:262124 ➝ 2 + 6 + 2 + 1 + 2 + 4 ➝ 17。输入:s = “leetcode”, k = 2。
2022-12-15 15:26:39 279
原创 力扣 1781. 所有子字符串美丽值之和
解释:美丽值不为零的字符串包括 [“aab”,“aabc”,“aabcb”,“abcb”,“bcb”] ,每一个字符串的美丽值都为 1。链接:https://leetcode.cn/problems/sum-of-beauty-of-all-substrings。一个字符串的 美丽值 定义为:出现频率最高字符与出现频率最低字符的出现次数之差。给你一个字符串 s ,请你返回它所有子字符串的 美丽值 之和。比方说,“abaacc” 的美丽值为 3 - 1 = 2。输入:s = “aabcb”
2022-12-14 13:48:33 164
原创 力扣 1832. 判断句子是否为全字母句
链接:https://leetcode.cn/problems/check-if-the-sentence-is-pangram。给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句。商业转载请联系官方授权,非商业转载请注明出处。解释:sentence 包含英语字母表中每个字母至少一次。全字母句 指包含英语字母表中每个字母至少一次的句子。否则,返回 false。输入:sentence = “leetcode”来源:力扣(LeetCode)
2022-12-13 21:34:58 105
原创 力扣 1780. 判断一个数字是否可以表示成三的幂的和
链接:https://leetcode.cn/problems/check-if-number-is-a-sum-of-powers-of-three。给你一个整数 n ,如果你可以将 n 表示成若干个不同的三的幂之和,请你返回 true ,否则请返回 false。对于一个整数 y ,如果存在整数 x 满足 y == 3x ,我们称这个整数 y 是三的幂。商业转载请联系官方授权,非商业转载请注明出处。解释:91 = 30 + 32 + 34。解释:12 = 31 + 32。来源:力扣(LeetCode)
2022-12-11 21:51:18 99
原创 力扣 309. 最佳买卖股票时机含冷冻期
链接:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-with-cooldown。给定一个整数数组prices,其中第 prices[i] 表示第 i 天的股票价格。解释: 对应的交易状态为: [买入, 卖出, 冷冻期, 买入, 卖出]注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。输入: prices = [1,2,3,0,2]
2022-12-08 21:21:48 193
原创 力扣 1812. 判断国际象棋棋盘中一个格子的颜色
链接:https://leetcode.cn/problems/determine-color-of-a-chessboard-square。给你一个坐标 coordinates ,它是一个字符串,表示国际象棋棋盘中一个格子的坐标。坐标第一个字符是字母,第二个字符是数字。如果所给格子的颜色是白色,请你返回 true,如果是黑色,请返回 false。解释:如上图棋盘所示,“a1” 坐标的格子是黑色的,所以返回 false。解释:如上图棋盘所示,“h3” 坐标的格子是白色的,所以返回 true。
2022-12-08 14:11:36 187
原创 力扣 124. 二叉树中的最大路径和
路径 被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和 。输入:root = [1,2,3]输出:6解释:最优路径是 2 -> 1 -> 3 ,路径和为 2 + 1 + 3 = 6输入:root = [-10,9,20,null,null,15,7]输出:42解释:最优路径是 15 -> 20
2022-12-06 16:51:42 369
原创 WebAssembly学习笔记(一)
创建一个用于存放文件的目录: WebAssembly\Chapter 3\3.4 html_template\。创建C或C++代码。创建一个名为 calculate_primes.c 的文件。要做的第一件事是包含C标准库、 C标准输入和输出,以及Emscripten库的头文件。将C代码编译为WebAssembly模块。在Web浏览器中打开HTML文件查看结果。创建一个用于存放文件的目录: WebAssembly\Chapter 3\3.5 js_plumbing\ 。创建C或C++代码。将C代码编译为Web
2022-12-06 11:55:18 1313
原创 力扣 1805. 字符串中不同整数的数目
给你一个字符串 word ,该字符串由数字和小写英文字母组成。请你用空格替换每个不是数字的字符。例如,“a123bc34d8ef34” 将会变成 " 123 34 8 34" 。注意,剩下的这些整数为(相邻彼此至少有一个空格隔开):“123”、“34”、“8” 和 “34” 。返回对 word 完成替换后形成的 不同 整数的数目。只有当两个整数的 不含前导零 的十进制表示不同, 才认为这两个整数也不同。输入:word = “a123bc34d8ef34”输出:3解释:不同的整数有 “123”、“34
2022-12-06 10:52:39 89
原创 力扣 394. 字符串解码
给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。输入:s = “3[a]2[bc]”输出:“aaabcbc”输入:s = “3[a2[c]]”输出:“acc
2022-12-05 22:32:01 583
原创 力扣 1796. 字符串中第二大的数字
给你一个混合字符串 s ,请你返回 s 中 第二大 的数字,如果不存在第二大的数字,请你返回 -1 。混合字符串 由小写英文字母和数字组成。输入:s = “dfa12321afd”输出:2解释:出现在 s 中的数字包括 [1, 2, 3] 。第二大的数字是 2 。输入:s = “abc1111”输出:-1解释:出现在 s 中的数字只包含 [1] 。没有第二大的数字。来源:力扣(LeetCode)链接:https://leetcode.cn/problems/second-largest-digit
2022-12-03 11:31:49 178
原创 力扣 895. 最大频率栈
/返回 4 ,因为 4, 5 和 7 出现频率最高,但 4 是最接近顶部的。堆栈变成 [5,7]。//返回 7 ,因为 5 和 7 出现频率最高,但7最接近顶部。堆栈变成 [5,7,5,4]。堆栈变成 [5,7,5,7,4]。堆栈变成 [5,7,4]。输出:[null,null,null,null,null,null,null,5,7,5,4]//堆栈是 [5,7,5,7,4,5]//堆栈是 [5,7,5,7,4]//堆栈是 [5,7,5,7]//堆栈是 [5,7,5]//堆栈是 [5,7]
2022-12-02 17:40:26 624
原创 力扣 1769. 移动所有球到每个盒子所需的最小操作数
给你一个长度为 n 的二进制字符串 boxes ,其中 boxes[i] 的值为 ‘0’ 表示第 i 个盒子是 空 的,而 boxes[i] 的值为 ‘1’ 表示盒子里有 一个 小球。链接:https://leetcode.cn/problems/minimum-number-of-operations-to-move-all-balls-to-each-box。返回一个长度为 n 的数组 answer ,其中 answer[i] 是将所有小球移动到第 i 个盒子所需的 最小 操作数。输出:[1,1,3]
2022-12-02 12:07:20 102
原创 力扣 1779. 找到最近的有相同 X 或 Y 坐标的点
给你两个整数 x 和 y ,表示你在一个笛卡尔坐标系下的 (x, y) 处。解释:所有点中,[3,1],[2,4] 和 [4,4] 是有效点。有效点中,[2,4] 和 [4,4] 距离你当前位置的曼哈顿距离最小,都为 1。[2,4] 的下标最小,所以返回 2。输入:x = 3, y = 4, points = [[1,2],[3,1],[2,4],[2,3],[4,4]]输入:x = 3, y = 4, points = [[3,4]]输入:x = 3, y = 4, points = [[2,3]]
2022-12-01 21:57:48 149
原创 力扣 1758. 生成交替二进制字符串的最少操作数
交替字符串 定义为:如果字符串中不存在相邻两个字符相等的情况,那么该字符串就是交替字符串。例如,字符串 “010” 是交替字符串,而字符串 “0100” 不是。给你一个仅由字符 ‘0’ 和 ‘1’ 组成的字符串 s。一步操作中,你可以将任一 ‘0’ 变成 ‘1’ ,或者将 ‘1’ 变成 ‘0’。解释:如果将最后一个字符变为 ‘1’ ,s 就变成 “0101” ,即符合交替字符串定义。解释:需要 2 步操作得到 “0101” 或 “1010”。解释:s 已经是交替字符串。输入:s = “0100”
2022-12-01 21:34:40 110
原创 力扣 889. 根据前序和后序遍历构造二叉树
给定两个整数数组,preorder 和 postorder ,其中 preorder 是一个具有 无重复 值的二叉树的前序遍历,postorder 是同一棵树的后序遍历,重构并返回二叉树。输入:preorder = [1,2,4,5,3,6,7], postorder = [4,5,2,6,7,3,1]输入: preorder = [1], postorder = [1]商业转载请联系官方授权,非商业转载请注明出处。如果存在多个答案,您可以返回其中 任何 一个。输出:[1,2,3,4,5,6,7]
2022-11-28 21:01:15 400
原创 力扣 1752. 检查数组是否经排序和轮转得到
⭐题解:https://leetcode.cn/problems/check-if-array-is-sorted-and-rotated/solution/-by-muse-77-oxgw/注意:我们称数组 A 在轮转 x 个位置后得到长度相同的数组 B ,当它们满足 A[i] == B[(i+x) % A.length] ,其中 % 为取余运算。可以轮转 x = 3 个位置,使新数组从值为 3 的元素开始:[3,4,5,1,2]。著作权归领扣网络所有。解释:[1,2,3,4,5] 为有序的源数组。
2022-11-28 17:20:49 214
原创 力扣 795. 区间子数组个数
⭐题解:https://leetcode.cn/problems/number-of-subarrays-with-bounded-maximum/solution/by-ac_oier-gmpt/给你一个整数数组 nums 和两个整数:left 及 right。输入:nums = [2,9,2,5,6], left = 2, right = 8。输入:nums = [2,1,4,3], left = 2, right = 3。解释:满足条件的三个子数组:[2], [2, 1], [3]
2022-11-25 22:13:55 138
原创 力扣 337. 打家劫舍 III
⭐题解:https://leetcode.cn/problems/house-robber-iii/solution/san-chong-fang-fa-jie-jue-shu-xing-dong-tai-gui-hu/一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。返回 在不触动警报的情况下 ,小偷能够盗取的最高金额。小偷又发现了一个新的可行窃的地区。输入: root = [3,2,3,null,3,null,1]输入: root = [3,4,5,1,3,null,1]
2022-11-24 15:41:38 277
原创 力扣 146. LRU 缓存
int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1。// 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}// 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}链接:https://leetcode.cn/problems/lru-cache。// 缓存是 {1=1, 2=2}// 返回 -1 (未找到)// 返回 -1 (未找到)lRUCache.put(1, 1);// 缓存是 {1=1}
2022-11-21 11:18:41 390
原创 力扣 1732. 找到最高海拔
给你一个长度为 n 的整数数组 gain ,其中 gain[i] 是点 i 和点 i + 1 的 净海拔高度差(0
2022-11-19 15:08:46 209
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人