yichen
  • 首页
  • 归档
  • 标签
  • 关于

LC-2552.统计上升四元组

题目描述leetcode 困难题 给你一个长度为 n 下标从 0 开始的整数数组 nums ,它包含 1 到 n 的所有数字,请你返回上升四元组的数目。 如果一个四元组 (i, j, k, l) 满足以下条件,我们称它是上升的: 0 <= i < j < k < l < n 且 nums[i] < nums[k] < nums[j] <
2023-01-31
#前缀和 #差分

LC-1143.最长公共子序列

题目描述leetcode 中等题 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,”ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序
2023-01-20
#动态规划

LC-2536.子矩阵元素加1

题目描述leetcode 中等题 给你一个正整数 n ,表示最初有一个 n x n 、下标从 0 开始的整数矩阵 mat ,矩阵中填满了 0 。 另给你一个二维整数数组 query 。针对每个查询 query[i] = [row1i, col1i, row2i, col2i] ,请你执行下述操作: 找出 左上角 为 (row1i, col1i) 且 右下角 为 (row2i, col2i
2023-01-17
#前缀和 #差分

LC-1803.统计异或值在范围内的数对有多少

题目描述leetcode 困难题 给你一个整数数组 nums (下标 从 0 开始 计数)以及两个整数:low 和 high ,请返回 漂亮数对 的数目。 漂亮数对 是一个形如 (i, j) 的数对,其中 0 <= i < j < nums.length 且 low <= (nums[i] XOR nums[j]) <= high 。 示
2023-01-12
#字典树 #容斥原理

LC-2532.过桥的时间

题目描述leetcode 困难题 共有 k 位工人计划将 n 个箱子从旧仓库移动到新仓库。给你两个整数 n 和 k,以及一个二维整数数组 time ,数组的大小为 k x 4 ,其中 time[i] = [leftToRighti, pickOldi, rightToLefti, putNewi] 。 一条河将两座仓库分隔,只能通过一座桥通行。旧仓库位于河的右岸,新仓库在河的左岸。开始时
2023-01-11
#复杂模拟 #优先队列

LC-1658.将x减到0的最小操作数

题目描述leetcode 中等题 给你一个整数数组 nums 和一个整数 x 。每一次操作时,你应当移除数组 nums 最左边或最右边的元素,然后从 x 中减去该元素的值。请注意,需要 修改 数组以供接下来的操作使用。 如果可以将 x 恰好 减到 0 ,返回 最小操作数 ;否则,返回 -1 。 示例1: 123输入:nums = [1,1,4,2,3], x = 5输出:2解释:最佳解决方案是移除
2023-01-08
#前缀和 #滑动窗口 #双指针/多指针

LC-1802.有界数组中指定下标处的最大值

题目描述leetcode 中等题 给你三个正整数 n、index 和 maxSum 。你需要构造一个同时满足下述所有条件的数组 nums(下标 从 0 开始 计数): nums.length == n nums[i] 是 正整数 ,其中 0 <= i < n abs(nums[i] - nums[i+1]) <= 1 ,其中 0 <
2023-01-07
#贪心 #二分查找

LC-1799.N次操作后的最大分数和

题目描述leetcode 困难题 给你 nums ,它是一个大小为 2 * n 的正整数数组。你必须对这个数组执行 n 次操作。 在第 i 次操作时(操作编号从 1 开始),你需要: 选择两个元素 x 和 y 。获得分数 i * gcd(x, y) 。将 x 和 y 从 nums 中删除。请你返回 n 次操作后你能获得的分数和最大为多少。 函数 gcd(x, y) 是 x 和 y 的最大公约数。
2022-12-22
#动态规划 #记忆化搜索 #状态压缩

LC-1760.袋子里最少数目的球

题目描述leetcode 中等题 给你一个整数数组 nums ,其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations 。 你可以进行如下操作至多 maxOperations 次: 选择任意一个袋子,并将袋子里的球分到 2 个新的袋子中,每个袋子里都有 正整数 个球。 比方说,一个袋子里有 5 个球,你可以把它们分到两个新袋子里,分别有 1 个和 4 个
2022-12-20
#二分查找

LC-1703.得到连续K个1的最少相邻交换次数

题目描述leetcode 困难题 给你一个整数数组 nums 和一个整数 k 。 nums 仅包含 0 和 1 。每一次移动,你可以选择 相邻 两个数字并将它们交换。 请你返回使 nums 中包含 k 个 连续 1 的 最少 交换次数。 示例1: 123输入:nums = [1,0,0,1,0,1], k = 2输出:1解释:在第一次操作时,nums 可以变成 [1,0,0,0,1,1] 得到连续
2022-12-19
#贪心 #前缀和 #TODO
1…34567…10

搜索