原文链接: https://leetcode-cn.com/problems/the-masseuse-lcci 英文原文A popular masseuse receives a sequence of back-to-back appointment requests and is debating which ones to accept. She needs a break between appointments and therefore she cannot accept any …
分类详情
简单 分类
原文链接: https://leetcode-cn.com/problems/add-without-plus-lcci 英文原文Write a function that adds two numbers. You should not use + or any arithmetic operators. Example: Input: a = 1, b = 1 Output: 2 Note: a and b may be 0 or negative. The result fits in 3…
原文链接: https://leetcode-cn.com/problems/missing-number-lcci 英文原文An array contains all the integers from 0 to n, except for one number which is missing. Write code to find the missing integer. Can you do it in O(n) time? Note: This problem is slightly …
原文链接: https://leetcode-cn.com/problems/find-majority-element-lcci 英文原文A majority element is an element that makes up more than half of the items in an array. Given a integers array, find the majority element. If there is no majority element, return -…
原文链接: https://leetcode-cn.com/problems/na-ying-bi 英文原文 中文题目桌上有 n 堆力扣币,每堆的数量保存在数组 coins 中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。 示例 1: 输入:[4,2,1] 输出:4 解释:第一堆力扣币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。 示例 2: 输入:[2,3,10] 输出:8 限制: 1 <= n <= 4 1 <…
原文链接: https://leetcode-cn.com/problems/chuan-di-xin-xi 英文原文 中文题目小朋友 A 在和 ta 的小伙伴们玩传信息游戏,游戏规则如下: 有 n 名玩家,所有玩家编号分别为 0 ~ n-1,其中小朋友 A 的编号为 0 每个玩家都有固定的若干个可传信息的其他玩家(也可能没有)。传信息的关系是单向的(比如 A 可以向 B 传信息,但 B 不能向 A 传信息)。 每轮信息必须需要传递给另一个人,且信息可重复经过同一个人 给定总玩家数 n,以及按 …
原文链接: https://leetcode-cn.com/problems/qi-wang-ge-shu-tong-ji 英文原文 中文题目某互联网公司一年一度的春招开始了,一共有 n 名面试者入选。每名面试者都会提交一份简历,公司会根据提供的简历资料产生一个预估的能力值,数值越大代表越有可能通过面试。 小 A 和小 B 负责审核面试者,他们均有所有面试者的简历,并且将各自根据面试者能力值从大到小的顺序浏览。由于简历事先被打乱过,能力值相同的简历的出现顺序是从它们的全排列中等可能地取一个。现在…
原文链接: https://leetcode-cn.com/problems/nGK0Fy 英文原文 中文题目小扣在秋日市集发现了一款速算机器人。店家对机器人说出两个数字(记作 `x` 和 `y`),请小扣说出计算指令: - `"A"` 运算:使 `x = 2 * x + y`; - `"B"` 运算:使 `y = 2 * y + x`。 在本次游戏中,店家说出的数字为 x = 1 和 y = 0,小扣说出的计算指令记作仅由大写字母 A、B 组成的字符串 s,字符串中字符的顺序表示计算顺序,请返…
原文链接: https://leetcode-cn.com/problems/2vYnGI 英文原文 中文题目小扣在秋日市集选择了一家早餐摊位,一维整型数组 `staple` 中记录了每种主食的价格,一维整型数组 `drinks` 中记录了每种饮料的价格。小扣的计划选择一份主食和一款饮料,且花费不超过 `x` 元。请返回小扣共有多少种购买方案。 注意:答案需要以 1e9 + 7 (1000000007) 为底取模,如:计算初始结果为:1000000008,请返回 1 示例 1: 输入:stapl…
原文链接: https://leetcode-cn.com/problems/4xy4Wx 英文原文 中文题目小力将 N 个零件的报价存于数组 `nums`。小力预算为 `target`,假定小力仅购买两个零件,要求购买零件的花费不超过预算,请问他有多少种采购方案。 注意:答案需要以 1e9 + 7 (1000000007) 为底取模,如:计算初始结果为:1000000008,请返回 1 示例 1: 输入:nums = [2,5,3,5], target = 6 输出:1 解释:预算内仅能购买 …
原文链接: https://leetcode-cn.com/problems/SNJvJP 英文原文 中文题目某乐团的演出场地可视作 `num * num` 的二维矩阵 `grid`(左上角坐标为 `[0,0]`),每个位置站有一位成员。乐团共有 `9` 种乐器,乐器编号为 `1~9`,每位成员持有 `1` 个乐器。 为保证声乐混合效果,成员站位规则为:自 grid 左上角开始顺时针螺旋形向内循环以 1,2,...,9 循环重复排列。例如当 num = 5 时,站位如图所示 请返回位于…
原文链接: https://leetcode-cn.com/problems/o8SXZn 英文原文 中文题目给定 N 个无限容量且初始均空的水缸,每个水缸配有一个水桶用来打水,第 `i` 个水缸配备的水桶容量记作 `bucket[i]`。小扣有以下两种操作: - 升级水桶:选择任意一个水桶,使其容量增加为 `bucket[i]+1` - 蓄水:将全部水桶接满水,倒入各自对应的水缸 每个水缸对应最低蓄水量记作 vat[i],返回小扣至少需要多少次操作可以完成所有水缸蓄水要求。 注意:实际蓄水量 …
原文链接: https://leetcode-cn.com/problems/Ju9Xwi 英文原文 中文题目小扣打算给自己的 **VS code** 安装使用插件,初始状态下带宽每分钟可以完成 `1` 个插件的下载。假定每分钟选择以下两种策略之一: - 使用当前带宽下载插件 - 将带宽加倍(下载插件数量随之加倍) 请返回小扣完成下载 n 个插件最少需要多少分钟。 注意:实际的下载的插件数量可以超过 n 个 示例 1: 输入:n = 2 输出:2 解释:以下两个方案,都能实现 2 分钟内下载 2…
原文链接: https://leetcode-cn.com/problems/WqXACV 英文原文 中文题目有 `N` 位扣友参加了微软与力扣举办了「以扣会友」线下活动。主办方提供了 `2*N` 道题目,整型数组 `questions` 中每个数字对应了每道题目所涉及的知识点类型。 若每位扣友选择不同的一题,请返回被选的 `N` 道题目至少包含多少种知识点类型。 示例 1: 输入:questions = [2,1,6,2] 输出:1 解释:有 2 位扣友在 4 道题目中选择 2 题。可选择完成…
原文链接: https://leetcode-cn.com/problems/xoh6Oh 中文题目给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 '*'、除号 '/' 以及求余符号 '%' 。 注意: 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2 假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231−1]。本题中,…
原文链接: https://leetcode-cn.com/problems/w3tCBm 中文题目给定一个非负整数 n ,请计算 0 到 n 之间的每个数字的二进制表示中 1 的个数,并输出一个数组。 示例 1: 输入: n = 2 输出: [0,1,1] 解释: 0 --> 0 1 --> 1 2 --> 10 示例 2: 输入: n = 5 输出: [0,1,1,2,1,2] 解释: 0 --> 0 1 --> 1 2 --> 10 3 --> 11 4 --> 100 5 --> 101…
原文链接: https://leetcode-cn.com/problems/JFETK5 中文题目给定两个 01 字符串 a 和 b ,请计算它们的和,并以二进制字符串的形式输出。 输入为 非空 字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "10" 输出: "101" 示例 2: 输入: a = "1010", b = "1011" 输出: "10101" 提示: 每个字符串仅由字符 '0' 或 '1' 组成。 1 <= a.length, b.lengt…
原文链接: https://leetcode-cn.com/problems/kLl5u1 中文题目给定一个已按照 升序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。 函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 0 开始计数 ,所以答案数组应当满足 0 <= answer[0] < answer[1] < numbers.length 。 假设数组中存在且只存在一对符合条件的数字,同时一个数字不能使用…
原文链接: https://leetcode-cn.com/problems/GzCJIP 中文题目数组的每个下标作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i](下标从 0 开始)。 每当爬上一个阶梯都要花费对应的体力值,一旦支付了相应的体力值,就可以选择向上爬一个阶梯或者爬两个阶梯。 请找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 或 1 的元素作为初始阶梯。 示例 1: 输入:cost = [10, 15, 20] 输出:15 解释:最低花费是从 c…
原文链接: https://leetcode-cn.com/problems/tvdfij 中文题目给你一个整数数组 nums ,请计算数组的 中心下标 。 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。 如果中心下标位于数组最左端,那么左侧数之和视为 0 ,因为在下标的左侧不存在元素。这一点对于中心下标位于数组最右端同样适用。 如果数组有多个中心下标,应该返回 最靠近左边 的那一个。如果数组不存在中心下标,返回 -1 。 示例 1: 输入:nums = [1…
原文链接: https://leetcode-cn.com/problems/XltzEq 中文题目给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s = "A man, a plan, a canal: Panama" 输出: true 解释:"amanaplanacanalpanama" 是回文串 示例 2: 输入: s = "race a car" 输出: false 解释:"r…
原文链接: https://leetcode-cn.com/problems/RQku0D 中文题目给定一个非空字符串 s,请判断如果 最多 从字符串中删除一个字符能否得到一个回文字符串。 示例 1: 输入: s = "aba" 输出: true 示例 2: 输入: s = "abca" 输出: true 解释: 可以删除 "c" 字符 或者 "b" 字符 示例 3: 输入: s = "abc" 输出: false 提示: 1 <= s.length <= 105 s 由小写英文字母组成 注意:…
原文链接: https://leetcode-cn.com/problems/3u1WK4 中文题目给定两个单链表的头节点 headA 和 headB ,请找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,…
原文链接: https://leetcode-cn.com/problems/UHnkqh 中文题目给定单链表的头节点 head ,请反转链表,并返回反转后的链表的头节点。 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head = [1,2] 输出:[2,1] 示例 3: 输入:head = [] 输出:[] 提示: 链表中节点的数目范围是 [0, 5000] -5000 <= Node.val <= 5000 进阶:链表可以选用迭代或…
原文链接: https://leetcode-cn.com/problems/aMhZSa 中文题目给定一个链表的 头节点 head ,请判断其是否为回文链表。 如果一个链表是回文,那么链表节点序列从前往后看和从后往前看是相同的。 示例 1: 输入: head = [1,2,3,3,2,1] 输出: true 示例 2: 输入: head = [1,2] 输出: false 提示: 链表 L 的长度范围为 [1, 105] 0 <= node.val <= 9 进阶:能否用 O(n) 时间复杂度…
原文链接: https://leetcode-cn.com/problems/dKk3P7 中文题目给定两个字符串 s 和 t ,编写一个函数来判断它们是不是一组变位词(字母异位词)。 注意:若 s 和 t 中每个字符出现的次数都相同且字符顺序不完全相同,则称 s 和 t 互为变位词(字母异位词)。 示例 1: 输入: s = "anagram", t = "nagaram" 输出: true 示例 2: 输入: s = "rat", t = "car" 输出: false 示例 3: 输入: …
原文链接: https://leetcode-cn.com/problems/lwyVBB 中文题目某种外星语也使用英文小写字母,但可能顺序 order 不同。字母表的顺序(order)是一些小写字母的排列。 给定一组用外星语书写的单词 words,以及其字母表的顺序 order,只有当给定的单词在这种外星语中按字典序排列时,返回 true;否则,返回 false。 示例 1: 输入:words = ["hello","leetcode"], order = "hlabcdefgijkmnopq…
原文链接: https://leetcode-cn.com/problems/NUPfPr 中文题目给定一个非空的正整数数组 nums ,请判断能否将这些数字分成元素和相等的两部分。 示例 1: 输入:nums = [1,5,11,5] 输出:true 解释:nums 可以分割成 [1, 5, 5] 和 [11] 。 示例 2: 输入:nums = [1,2,3,5] 输出:false 解释:nums 不可以分为和相等的两部分 提示: 1 <= nums.length <= 200 1 <= n…
原文链接: https://leetcode-cn.com/problems/qIsx9U 中文题目给定一个整数数据流和一个窗口大小,根据该滑动窗口的大小,计算滑动窗口里所有数字的平均值。 实现 MovingAverage 类: MovingAverage(int size) 用窗口大小 size 初始化对象。 double next(int val) 成员函数 next 每次调用的时候都会往滑动窗口增加一个整数,请计算并返回数据流中最后 size 个值的移动平均值,即滑动窗口里所有数字的平均值…
原文链接: https://leetcode-cn.com/problems/H8086Q 中文题目写一个 RecentCounter 类来计算特定时间范围内最近的请求。 请实现 RecentCounter 类: RecentCounter() 初始化计数器,请求数为 0 。 int ping(int t) 在时间 t 添加一个新请求,其中 t 表示以毫秒为单位的某个时间,并返回过去 3000 毫秒内发生的所有请求数(包括新请求)。确切地说,返回在 [t-3000, t] 内发生的请求数。 保证…