宫水三叶の刷题日记
  • 首页
  • 归档
  • 标签
  • 关于
  • 友链
  •   
  •   

LC 868. 二进制间距

题目描述这是 LeetCode 上的 868. 二进制间距 ,难度为 简单。 给定一个正整数 $n$,找到并返回 $n$ 的二进制表示中两个相邻 $1$ 之间的最长距离。 如果不存在两个相邻的 $1$,返回 $0$ 。 如果只有 $0$ 将两个 $1$ 分隔开(可能不存在 $0$ ),则认为这两个 $1$ 彼此相邻。两个 $1$ 之间的距离是它们的二进制表示中位置的绝对差。例如,"100

2022-04-24
模拟

LC 587. 安装栅栏

题目描述这是 LeetCode 上的 587. 安装栅栏 ,难度为 困难。 在一个二维的花园中,有一些用 $(x, y)$ 坐标表示的树。由于安装费用十分昂贵,你的任务是先用最短的绳子围起所有的树。只有当所有的树都被绳子包围时,花园才能围好栅栏。 你需要找到正好位于栅栏边界上的树的坐标。 示例 1:1234输入: [[1,1],[2,2],[2,0],[2,4],[3,3],[4,2]]输出: [

2022-04-23
计算几何 凸包

LC 396. 旋转函数

题目描述这是 LeetCode 上的 396. 旋转函数 ,难度为 中等。 给定一个长度为 $n$ 的整数数组 $nums$ 。 假设 $arr_k$ 是数组 $nums$ 顺时针旋转 $k$ 个位置后的数组,我们定义 $nums$ 的 旋转函数 F 为: F(k) = 0 * arrk[0] + 1 * arrk[1] + ... + (n - 1) * arrk[n - 1] 返回 F(

2022-04-22
滑动窗口 前缀和

LC 824. 山羊拉丁文

题目描述这是 LeetCode 上的 824. 山羊拉丁文 ,难度为 简单。 给你一个由若干单词组成的句子 sentence,单词间由空格分隔。每个单词仅由大写和小写英文字母组成。 请你将句子转换为 “山羊拉丁文(Goat Latin)”(一种类似于 猪拉丁文 - Pig Latin 的虚构语言)。山羊拉丁文的规则如下: 如果单词以元音开头('a', 'e', &

2022-04-21
模拟

LC 388. 文件的最长绝对路径

题目描述这是 LeetCode 上的 388. 文件的最长绝对路径 ,难度为 中等。 假设有一个同时存储文件和目录的文件系统。下图展示了文件系统的一个示例: 这里将 dir 作为根目录中的唯一目录。dir 包含两个子目录 subdir1 和 subdir2 。 subdir1 包含文件 file1.ext 和子目录 subsubdir1;subdir2 包含子目录 subsubdir2,该子目录

2022-04-20
哈希表 模拟

LC 821. 字符的最短距离

题目描述这是 LeetCode 上的 821. 字符的最短距离 ,难度为 简单。 给你一个字符串 s 和一个字符 c ,且 c 是 s 中出现过的字符。 返回一个整数数组 answer,其中 $answer.length = s.length$ 且 $answer[i]$ 是 s 中从下标 $i$ 到离它最近的字符 c 的距离。 两个下标 $i$ 和 $j$ 之间的距离为 abs(i - j) ,

2022-04-19
模拟 BFS

LC 386. 字典序排数

题目描述这是 LeetCode 上的 386. 字典序排数 ,难度为 中等。 给你一个整数 n ,按字典序返回范围 $[1, n]$ 内所有整数。 你必须设计一个时间复杂度为 $O(n)$ 且使用 $O(1)$ 额外空间的算法。 示例 1:123输入:n = 13输出:[1,10,11,12,13,2,3,4,5,6,7,8,9]示例 2:123输入:n = 2输出:[1,2] 提示: $1 &

2022-04-18
DFS 递归 迭代

LC 819. 最常见的单词

题目描述这是 LeetCode 上的 819. 最常见的单词 ,难度为 简单。 给定一个段落 (paragraph) 和一个禁用单词列表 (banned)。返回出现次数最多,同时不在禁用列表中的单词。 题目保证至少有一个词不在禁用列表中,而且答案唯一。 禁用列表中的单词用小写字母表示,不含标点符号。段落中的单词不区分大小写。答案都是小写字母。 示例:1234567891011输入: paragra

2022-04-17
哈希表 模拟

LC 479. 最大回文数乘积

题目描述这是 LeetCode 上的 479. 最大回文数乘积 ,难度为 困难。 给定一个整数 $n$ ,返回 可表示为两个 $n$ 位整数乘积的 最大回文整数 。 因为答案可能非常大,所以返回它对 $1337$ 取余 。 示例 1:12345输入:n = 2输出:987解释:99 x 91 = 9009, 9009 % 1337 = 987示例 2:123输入: n = 1输出: 9 提示:

2022-04-16
数学 枚举

LC 385. 迷你语法分析器

题目描述这是 LeetCode 上的 385. 迷你语法分析器 ,难度为 中等。 给定一个字符串 s 表示一个整数嵌套列表,实现一个解析它的语法分析器并返回解析的结果 NestedInteger 。 列表中的每个元素只可能是整数或整数嵌套列表 示例 1:12345输入:s = "324",输出:324解释:你应该返回一个 NestedInteger 对象,其中只包含整数值 32

2022-04-14
模拟 栈

LC 2069. 模拟行走机器人 II

题目描述这是 LeetCode 上的 2069. 模拟行走机器人 II ,难度为 中等。 给你一个在 XY 平面上的 width x height 的网格图,左下角 的格子为 $(0, 0)$,右上角的格子为 $(width - 1, height - 1)$ 。网格图中相邻格子为四个基本方向之一("North","East","South&quo

2022-04-14
模拟 脑筋急转弯

LC 1672. 最富有客户的资产总量

题目描述这是 LeetCode 上的 1672. 最富有客户的资产总量 ,难度为 简单。 给你一个 $m * n$ 的整数网格 accounts,其中 $accounts[i][j]$ 是第 $i$ 位客户在第 $j$ 家银行托管的资产数量。返回最富有客户所拥有的 资产总量 。 客户的 资产总量 就是他们在各家银行托管的资产数量之和。最富有客户就是 资产总量 最大的客户。 示例 1:1234567

2022-04-13
模拟

LC 剑指 Offer II 030. 插入、删除和随机访问都是 O(1) 的容器

题目描述这是 LeetCode 上的 剑指 Offer II 030. 插入、删除和随机访问都是 O(1) 的容器 ,难度为 中等。 实现 RandomizedSet 类: RandomizedSet() 初始化 RandomizedSet 对象 bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true;否则,返回 false。 bool remov

2022-04-13
哈希表 数据结构

LC 面试题 02.05. 链表求和

题目描述这是 LeetCode 上的 面试题 02.05. 链表求和 ,难度为 中等。 给定两个用链表表示的整数,每个节点包含一个数位。 这些数位是反向存放的,也就是个位排在链表首部。 编写函数对这两个整数求和,并用链表形式返回结果。 示例:123输入:(7 -> 1 -> 6) + (5 -> 9 -> 2),即617 + 295输出:2 -> 1 -> 9,

2022-04-13
模拟 链表

LC 902. 最大为 N 的数字组合

题目描述这是 LeetCode 上的 902. 最大为 N 的数字组合 ,难度为 困难。 给定一个按 非递减顺序 排列的数字数组 digits。你可以用任意次数 $digits[i]$ 来写的数字。例如,如果 $digits = [1,3,5]$,我们可以写数字,如 '13', '551', 和 '1351315'。 返回 可以生成的小于或等于给定整

2022-04-13
动态规划 二分 数位 DP
1…2223242526…58

搜索

Hexo Fluid
总访问量 次 总访客数 人