
算法
某法外狂徒的说
这个作者很懒,什么都没留下…
展开
-
matrix每日一题——1025. 除数博弈
爱丽丝和鲍勃一起玩游戏,他们轮流行动。爱丽丝先手开局。最初,黑板上有一个数字 n。在每个玩家的回合,玩家需要执行以下操作:选出任一 x,满足 0 < x < n 且 n % x == 0。用 n - x 替换黑板上的数字 n。如果玩家无法执行这些操作,就会输掉游戏。只有在爱丽丝在游戏中取得胜利时才返回 true。假设两个玩家都以最佳状态参与游戏。原创 2022-11-18 15:37:46 · 688 阅读 · 1 评论 -
leetcode每日一题——891. 子序列宽度之和
一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和。由于答案可能非常大,请返回对 109 + 7 取余 后的结果。子序列 定义为从一个数组里删除一些(或者不删除)元素,但不改变剩下元素的顺序得到的数组。例如,[3,6,2,7] 就是数组 [0,3,1,6,2,2,7] 的一个子序列。原创 2022-11-18 15:30:40 · 660 阅读 · 0 评论 -
matrix每日一题——1534. 统计好三元组
给你一个整数数组 arr ,以及 a、b 、c 三个整数。请你统计其中好三元组的数量。如果三元组 (arr[i], arr[j], arr[k]) 满足下列全部条件,则认为它是一个 好三元组。其中 |x| 表示 x 的绝对值。返回 好三元组的数量。原创 2022-11-17 22:21:33 · 231 阅读 · 0 评论 -
leetcode每日一题——792. 匹配子序列的单词数
给定字符串 s 和字符串数组 words, 返回 words[i] 中是s的子序列的单词个数。字符串的 子序列 是从原始字符串中生成的新字符串,可以从中删去一些字符(可以是none),而不改变其余字符的相对顺序。例如, “ace” 是 “abcde” 的子序列。原创 2022-11-17 22:15:53 · 684 阅读 · 0 评论 -
Matrix每日一题——14. 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。原创 2022-11-16 19:38:10 · 109 阅读 · 0 评论 -
整数数组排列
给你一个长度为 n 的整数数组 nums ,表示由范围 [0, n - 1] 内所有整数组成的一个排列。全局倒置 的数目等于满足下述条件不同下标对 (i, j) 的数目:局部倒置 的数目等于满足下述条件的下标 i 的数目:当数组 nums 中 全局倒置 的数量等于 局部倒置 的数量时,返回 true;否则,返回 false。原创 2022-11-16 19:19:38 · 359 阅读 · 0 评论 -
matrix每日一题——303. 区域和检索 - 数组不可变
给定一个整数数组 nums,处理以下类型的多个查询:计算索引 left 和 right (包含 left 和 right)之间的 nums 元素的 和 ,其中 left原创 2022-11-15 16:41:03 · 91 阅读 · 0 评论 -
leetcode每日一题——1710. 卡车上的最大单元数
请你将一些箱子装在 一辆卡车 上。给你一个二维数组 boxTypes ,其中 boxTypes[i] = [numberOfBoxesi, numberOfUnitsPerBoxi] :numberOfBoxesi 是类型 i 的箱子的数量。numberOfUnitsPerBoxi 是类型 i 每个箱子可以装载的单元数量。整数 truckSize 表示卡车上可以装载 箱子 的 最大数量。只要箱子数量不超过 truckSize ,你就可以选择任意箱子装到卡车上。原创 2022-11-15 16:32:38 · 198 阅读 · 0 评论 -
matrix每日一题——1221. 分割平衡字符串
在一个 平衡字符串 中,‘L’ 和 ‘R’ 字符的数量是相同的。给你一个平衡字符串 s,请你将它分割成尽可能多的平衡字符串。注意:分割得到的每个字符串都必须是平衡字符串,且分割得到的平衡字符串是原平衡字符串的连续子串。返回可以通过分割得到的平衡字符串的 最大数量。原创 2022-11-14 17:05:10 · 128 阅读 · 0 评论 -
leetcode每日一题——805. 数组的均值分割
给定你一个整数数组 nums我们要将 nums 数组中的每个元素移动到 A 数组 或者 B 数组中,使得 A 数组和 B 数组不为空,并且 average(A) == average(B)。如果可以完成则返回true , 否则返回 false。注意:对于数组 arr , average(arr) 是 arr 的所有元素的和除以 arr 长度。原创 2022-11-14 16:41:41 · 188 阅读 · 0 评论 -
matrix每日一题——2413. 最小偶倍数
给你一个正整数 n ,返回 2 和 n 的最小公倍数(正整数)。原创 2022-11-13 20:27:36 · 221 阅读 · 0 评论 -
leetcode每日一题——791. 自定义字符串排序
给定两个字符串 order 和 s。order 的所有单词都是 唯一 的,并且以前按照一些自定义的顺序排序。对 s 的字符进行置换,使其与排序的 order 相匹配。更具体地说,如果在 order 中的字符 x 出现字符 y 之前,那么在排列后的字符串中, x 也应该出现在 y 之前。返回 满足这个性质的 s 的任意排列。原创 2022-11-13 20:21:07 · 528 阅读 · 0 评论 -
matrix每日一题——1876. 长度为三且各字符不同的子字符串
如果一个字符串不含有任何重复字符,我们称这个字符串为 好 字符串。给你一个字符串 s ,请你返回 s 中长度为 3 的 好子字符串 的数量。注意,如果相同的好子字符串出现多次,每一次都应该被记入答案之中。子字符串 是一个字符串中连续的字符序列。原创 2022-11-12 17:26:51 · 120 阅读 · 0 评论 -
leetcode每日一题——790. 多米诺和托米诺平铺
有两种形状的瓷砖:一种是 2 x 1 的多米诺形,另一种是形如 “L” 的托米诺形。两种形状都可以旋转。给定整数 n ,返回可以平铺 2 x n 的面板的方法的数量。返回对 109 + 7 取模 的值。平铺指的是每个正方形都必须有瓷砖覆盖。两个平铺不同,当且仅当面板上有四个方向上的相邻单元中的两个,使得恰好有一个平铺有一个瓷砖占据两个正方形。原创 2022-11-12 17:21:23 · 148 阅读 · 0 评论 -
matrix每日一题——682. 棒球比赛
你现在是一场采用特殊赛制棒球比赛的记录员。这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分。比赛开始时,记录是空白的。你会得到一个记录操作的字符串列表 ops,其中 ops[i] 是你需要记录的第 i 项操作,ops 遵循下述规则:整数 x - 表示本回合新获得分数 x“+” - 表示本回合新获得的得分是前两次得分的总和。题目数据保证记录此操作时前面总是存在两个有效的分数。“D” - 表示本回合新获得的得分是前一次得分的两倍。题目数据保证记录此操作时前面总是存在一个有效的分数。原创 2022-11-10 14:59:09 · 102 阅读 · 0 评论 -
leetcode每日一题——864. 获取所有钥匙的最短路径
给定一个二维网格 grid ,其中:‘.’ 代表一个空房间‘#’ 代表一堵‘@’ 是起点小写字母代表钥匙大写字母代表锁我们从起点开始出发,一次移动是指向四个基本方向之一行走一个单位空间。我们不能在网格外面行走,也无法穿过一堵墙。如果途经一个钥匙,我们就把它捡起来。除非我们手里有对应的钥匙,否则无法通过锁。假设 k 为 钥匙/锁 的个数,且满足 1原创 2022-11-10 14:43:50 · 194 阅读 · 0 评论 -
leetcode 每日一题——371. 两整数之和
给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。原创 2022-11-09 21:57:10 · 307 阅读 · 0 评论 -
leetcode 每日一题——816. 模糊坐标(中等难度)
我们有一些二维坐标,如 “(1, 3)” 或 “(2, 0.5)”,然后我们移除所有逗号,小数点和空格,得到一个字符串S。返回所有可能的原始字符串到一个列表中。原始的坐标表示法不会存在多余的零,所以不会出现类似于"00", “0.0”, “0.00”, “1.0”, “001”, "00.01"或一些其他更小的数来表示坐标。此外,一个小数点前至少存在一个数,所以也不会出现“.1”形式的数字。最后返回的列表可以是任意顺序的。而且注意返回的两个数字中间(逗号之后)都有一个空格。原创 2022-11-07 20:58:28 · 122 阅读 · 0 评论 -
力扣每日一题——258. 各位相加
给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。原创 2022-11-07 20:48:35 · 134 阅读 · 0 评论 -
每日一题——力扣1678. 设计 Goal 解析器
请你设计一个可以解释字符串 command 的 Goal 解析器。command 由 “G”、“()” 和/或 “(al)” 按某种顺序组成。Goal 解析器会将 “G” 解释为字符串 “G”、“()” 解释为字符串 “o” ,“(al)” 解释为字符串 “al”。然后,按原顺序将经解释得到的字符串连接成一个字符串。给你字符串 command ,返回 Goal 解析器 对 command 的解释结果。原创 2022-11-06 14:33:21 · 157 阅读 · 0 评论 -
每日一题——力扣1106. 解析布尔表达式
给你一个以字符串形式表述的 布尔表达式(boolean) expression,返回该式的运算结果。有效的表达式需遵循以下约定:“t”,运算结果为 True“f”,运算结果为 False“!(expr)”,运算过程为对内部表达式 expr 进行逻辑 非的运算(NOT)“&(expr1,expr2,…)”,运算过程为对 2 个或以上内部表达式 expr1, expr2, … 进行逻辑 与的运算(AND)原创 2022-11-06 14:22:11 · 91 阅读 · 0 评论 -
力扣每日一题——344. 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。原创 2022-11-04 19:24:41 · 85 阅读 · 0 评论