刷题
Chimpanzee1
这个作者很懒,什么都没留下…
展开
-
1402.做菜顺序(Python多种方法)
1402.做菜顺序一个厨师收集了他n道菜的满意程度satisfaction ,这个厨师做出每道菜的时间都是1单位时间。一道菜的 「喜爱时间」系数定义为烹饪这道菜以及之前每道菜所花费的时间乘以这道菜的满意程度,也就是time[i] * satisfaction[i] 。请你返回做完所有菜 「喜爱时间」总和的最大值为多少。你可以按任意顺序安排做菜的顺序,你也可以选择放弃做某些菜来获得更大的总和。示例1:输入:satisfaction = [-1, -8, 0, 5, -9]输出:14解释:原创 2020-11-06 11:05:33 · 439 阅读 · 0 评论 -
419. 甲板上的战舰(Python)
419. 甲板上的战舰给定一个二维的甲板, 请计算其中有多少艘战舰。 战舰用 'X’表示,空位用 '.'表示。 你需要遵守以下规则:给你一个有效的甲板,仅由战舰或者空位组成。战舰只能水平或者垂直放置。换句话说,战舰只能由 1xN (1 行, N 列)组成,或者 Nx1 (N 行, 1 列)组成,其中N可以是任意大小。两艘战舰之间至少有一个水平或垂直的空位分隔 - 即没有相邻的战舰。示例 :X…X…X…X在上面的甲板中有2艘战舰。无效样例 :…XXXXX…X你不会收到这样的无效甲板原创 2020-11-06 11:02:17 · 817 阅读 · 0 评论 -
1051.高度检查器(Python)
1051.高度检查器学校在拍年度纪念照时,一般要求学生按照非递减的高度顺序排列。请你返回能让所有学生以非递减高度排列的最小必要移动人数。注意,当一组学生被选中时,他们之间可以以任何可能的方式重新排序,而未被选中的学生应该保持不动。示例:输入:heights = [1, 1, 4, 2, 1, 3]输出:3解释:当前数组:[1, 1, 4, 2, 1, 3]目标数组:[1, 1, 1, 2, 3, 4]在下标2处(从0开始计数)出现4vs1 ,所以我们必须移动这名学生。在下标4处(从0开始原创 2020-11-06 11:00:43 · 130 阅读 · 0 评论 -
728. 自除数(Python)
728. 自除数自除数 是指可以被它包含的每一位数除尽的数。例如,128 是一个自除数,因为 128 % 1 == 0,128 % 2 == 0,128 % 8 == 0。还有,自除数不允许包含 0 。给定上边界和下边界数字,输出一个列表,列表的元素是边界(含边界)内所有的自除数。示例 1:输入:上边界left = 1, 下边界right = 22输出: [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 22]def func(left, right):原创 2020-11-06 10:59:24 · 2723 阅读 · 0 评论 -
1475.商品折扣后的最终价格(Python)
1475.商品折扣后的最终价格给你一个数组prices ,其中prices[i]是商店里第i件商品的价格。商店里正在进行促销活动,如果你要买第i件商品,那么你可以得到与prices[j]相等的折扣,其中j是满足j > i且prices[j] <= prices[i]的最小下标 ,如果没有满足条件的j ,你将没有任何折扣。请你返回一个数组,数组中第i个元素是折扣后你购买商品i最终需要支付的价格。示例1:输入:prices = [8, 4, 6, 2, 3]输出:[4, 2, 4, 2原创 2020-10-30 19:36:18 · 978 阅读 · 0 评论 -
1304.和为零的N个唯一整数(Python)
1304.和为零的N个唯一整数给你一个整数n,请你返回任意一个由n个各不相同的整数组成的数组,并且这n个数相加和为0 。示例1:输入:n = 5输出:[-7, -1, 1, 3, 4]解释:这些数组也是正确的[-5, -1, 1, 2, 3],[-3, -1, 2, -2, 4]。示例2:输入:n = 3输出:[-1, 0, 1]示例3:输入:n = 1输出:[0]def func(n): dp = [0]*n for i in range(n//2):原创 2020-10-30 19:35:45 · 146 阅读 · 0 评论 -
657.机器人能否返回原点(Python)
657.机器人能否返回原点在二维平面上,有一个机器人从原点(0, 0)开始。给出它的移动顺序,判断这个机器人在完成移动后是否在(0, 0)处结束。移动顺序由字符串表示。字符move[i]表示其第i次移动。机器人的有效动作有R(右),L(左),U(上)和D(下)。如果机器人在完成所有动作后返回原点,则返回true。否则,返回false。注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。示例1:输入: “UD原创 2020-10-30 19:35:14 · 198 阅读 · 0 评论 -
1323.6和9组成的最大数字(Python)
1323.6和9组成的最大数字给你一个仅由数字6和9组成的正整数num。你最多只能翻转一位数字,将6变成9,或者把9变成6 。请返回你可以得到的最大数字。示例1:输入:num = 9669输出:9969解释:改变第一位数字可以得到6669 。改变第二位数字可以得到9969 。改变第三位数字可以得到9699 。改变第四位数字可以得到9666 。其中最大的数字是9969 。示例2:输入:num = 9996输出:9999解释:将最后一位从6变到9,其结果9999是最大的数。def原创 2020-10-30 19:33:54 · 267 阅读 · 0 评论 -
338. 比特位计数(Python)
338. 比特位计数给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。示例 1:输入: 2输出: [0,1,1]示例 2:输入: 5输出: [0,1,1,2,1,2]def func(num): dp = [0]*(num+1) for i in range(1, num+1): dp[i] = dp[i & (i-1)]+1 # for i in range(n原创 2020-10-30 19:33:26 · 344 阅读 · 0 评论 -
转换成小写字母(Python)
转换成小写字母实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。示例 1:输入: “Hello”输出: “hello”示例 2:输入: “here”输出: “here”示例 3:输入: “LOVELY”输出: “lovely”def func(str): return str.lower()print(func("Hello"))...原创 2020-10-21 22:43:16 · 676 阅读 · 0 评论 -
1460. 通过翻转子数组使两个数组相等(Python)
1460. 通过翻转子数组使两个数组相等给你两个长度相同的整数数组 target 和 arr 。每一步中,你可以选择 arr 的任意 非空子数组 并将它翻转。你可以执行此过程任意次。如果你能让 arr 变得与 target 相同,返回 True;否则,返回 False 。示例 1:输入:target = [1,2,3,4], arr = [2,4,1,3]输出:true解释:你可以按照如下步骤使 arr 变成 target:1- 翻转子数组 [2,4,1] ,arr 变成 [1,4,2,3]原创 2020-10-21 22:42:32 · 172 阅读 · 0 评论 -
各位相加(Python)
258. 各位相加给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。def func(num): # while len(str(num)) != 1: # j = 0 # for i in str(num): # j += int(i) # num = j原创 2020-10-19 22:35:34 · 1986 阅读 · 0 评论 -
子数组和排序后的区间和(Python)
1508.子数组和排序后的区间和给你一个数组nums ,它包含n个正整数。你需要计算所有非空连续子数组的和,并将它们按升序排序,得到一个新的包含n * (n + 1) / 2个数字的数组。请你返回在新数组中下标为left到right (下标从1开始)的所有数字和(包括左右端点)。由于答案可能很大,请你将它对10 ^ 9 + 7取模后返回。示例1:输入:nums = [1, 2, 3, 4], n = 4, left = 1, right = 5输出:13解释:所有的子数组和为1, 3, 6原创 2020-10-19 21:28:21 · 251 阅读 · 0 评论 -
全排列(Python)
46. 全排列给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]from itertools import permutationsdef func(nums): arr = [] for i in permutations(nums, len(nums)): arr.append(list(i)) r原创 2020-10-19 21:27:43 · 174 阅读 · 0 评论 -
复写零(Python)
1089. 复写零给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。注意:请不要在超过该数组长度的位置写入元素。要求:请对输入的数组 就地 进行上述修改,不要从函数返回任何东西。示例 1:输入:[1,0,2,3,0,4,5,0]输出:null解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]示例 2:输入:[1,2,3]输出:null解释:调用函数后,输入的数组将被修改为:[1,2,3]def func(arr)原创 2020-10-16 15:08:51 · 166 阅读 · 0 评论 -
爬楼梯(Python)
70. 爬楼梯假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶def func(n): if n < 3:原创 2020-10-16 15:08:19 · 1634 阅读 · 0 评论 -
棒球比赛(Python)
682. 棒球比赛你现在是棒球比赛记录员。给定一个字符串列表,每个字符串可以是以下四种类型之一:1.整数(一轮的得分):直接表示您在本轮中获得的积分数。2. “+”(一轮的得分):表示本轮获得的得分是前两轮有效 回合得分的总和。3. “D”(一轮的得分):表示本轮获得的得分是前一轮有效 回合得分的两倍。4. “C”(一个操作,这不是一个回合的分数):表示您获得的最后一个有效 回合的分数是无效的,应该被移除。每一轮的操作都是永久性的,可能会对前一轮和后一轮产生影响。你需要返回你在所有回合中得分原创 2020-10-16 15:07:42 · 313 阅读 · 0 评论 -
数组形式的整数加法(Python)
989.数组形式的整数加法对于非负整数X而言,X的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果X = 1231,那么其数组形式为[1, 2, 3, 1]。给定非负整数X的数组形式A,返回整数X + K的数组形式。示例1:输入:A = [1, 2, 0, 0], K = 34输出:[1, 2, 3, 4]解释:1200 + 34 = 1234示例2:输入:A = [2, 7, 4], K = 181输出:[4, 5, 5]解释:274 + 181 = 455示例3:输入:原创 2020-10-16 15:06:59 · 890 阅读 · 0 评论 -
数组拆分 I(Python)
561. 数组拆分 I给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。示例 1:输入: [1,4,3,2]输出: 4解释: n 等于 2, 最大总和为 4 = min(1, 2) + min(3, 4).def func(nums): nums.sort() n = len(nums) res = 0 if n <原创 2020-10-16 15:06:16 · 353 阅读 · 1 评论 -
种花问题(Python)
605. 种花问题假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数 n 。能否在不打破种植规则的情况下种入 n 朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出: True示例 2:输入: flowerbed = [1,0,0,0,1], n = 2原创 2020-10-16 15:05:40 · 918 阅读 · 0 评论 -
排列硬币(Python)
441. 排列硬币你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状,第 k 行就必须正好有 k 枚硬币。给定一个数字 n,找出可形成完整阶梯行的总行数。n 是一个非负整数,并且在32位有符号整型的范围内。示例 1:n = 5硬币可排列成以下几行:¤¤ ¤¤ ¤因为第三行不完整,所以返回2.示例 2:n = 8硬币可排列成以下几行:¤¤ ¤¤ ¤ ¤¤ ¤因为第四行不完整,所以返回3.import mathdef func(n):return int(math.sq原创 2020-10-16 15:04:55 · 438 阅读 · 0 评论 -
第N个泰波那契数(python)
1137.第N个泰波那契数泰波那契序列Tn定义如下:T0 = 0, T1 = 1, T2 = 1, 且在n >= 0的条件下Tn + 3 = Tn + Tn + 1 + Tn + 2给你整数n,请返回第n个泰波那契数Tn的值。示例1:输入:n = 4输出:4解释:T_3 = 0 + 1 + 1 = 2T_4 = 1 + 1 + 2 = 4示例2:输入:n = 25输出:1389537def func(n):if n < 3:return nx, y, z = 0,原创 2020-10-16 15:04:10 · 694 阅读 · 0 评论 -
跳水板(python)
面试题 16.11. 跳水板你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer。你必须正好使用k块木板。编写一个方法,生成跳水板所有可能的长度。返回的长度需要从小到大排列。示例 1输入:shorter = 1longer = 2k = 3输出: [3,4,5,6]解释:可以使用 3 次 shorter,得到结果 3;使用 2 次 shorter 和 1 次 longer,得到结果 4 。以此类推,得到最终结果。de原创 2020-10-16 15:03:31 · 288 阅读 · 0 评论 -
去掉最低工资和最高工资后的工资平均值(python)
1491.去掉最低工资和最高工资后的工资平均值给你一个整数数组salary ,数组里每个数都是唯一的,其中salary[i]是第i个员工的工资。请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。示例1:输入:salary = [4000, 3000, 1000, 2000]输出:2500.00000解释:最低工资和最高工资分别是1000和4000 。去掉最低工资和最高工资以后的平均工资是(2000 + 3000) / 2 = 2500示例2:输入:salary = [1000, 20原创 2020-10-15 19:55:10 · 560 阅读 · 0 评论 -
判断能否形成等差数列(python)
1502.判断能否形成等差数列给你一个数字数组arr 。如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为等差数列 。如果可以重新排列数组形成等差数列,请返回true ;否则,返回false 。示例1:输入:arr = [3, 5, 1]输出:true解释:对数组重新排序得到[1, 3, 5]或者[5, 3, 1] ,任意相邻两项的差分别为2或 - 2 ,可以形成等差数列。示例2:输入:arr = [1, 2, 4]输出:false解释:无法通过重新排序得到等差数列。原创 2020-10-15 19:54:29 · 2074 阅读 · 0 评论 -
上升下降字符串(python)
1370.上升下降字符串给你一个字符串s ,请你根据下面的算法重新构造字符串:从s中选出最小的字符,将它接在结果字符串的后面。从s剩余字符中选出最小的字符,且该字符比上一个添加的字符大,将它接在结果字符串后面。重复步骤2 ,直到你没法从s中选择字符。从s中选出最大的字符,将它接在结果字符串的后面。从s剩余字符中选出最大的字符,且该字符比上一个添加的字符小,将它接在结果字符串后面。重复步骤5 ,直到你没法从s中选择字符。重复步骤1到6 ,直到s中所有字符都已经被选过。在任何一步中,如果最小或者原创 2020-10-15 19:53:54 · 233 阅读 · 0 评论 -
两个数组的交集II(python)
350.两个数组的交集II给定两个数组,编写一个函数来计算它们的交集。示例1:输入:nums1 = [1, 2, 2, 1], nums2 = [2, 2]输出:[2, 2]示例2:输入:nums1 = [4, 9, 5], nums2 = [9, 4, 9, 8, 4]输出:[4, 9]def func(nums1, nums2): dp = [] for i in nums1: if i in nums2: dp.append(i)原创 2020-10-15 19:53:05 · 133 阅读 · 0 评论 -
三角形的最大周长(python)
976.三角形的最大周长给定由一些正数(代表长度)组成的数组A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。如果不能形成任何面积不为零的三角形,返回0。示例1:输入:[2, 1, 2]输出:5示例2:输入:[1, 2, 1]输出:0示例3:输入:[3, 2, 3, 4]输出:10示例4:输入:[3, 6, 2, 3]输出:8def func(A): A.sort(reverse=True) for i in range(len(A) - 2):原创 2020-10-15 19:52:32 · 641 阅读 · 0 评论 -
距离顺序排列矩阵单元格(python)
1030.距离顺序排列矩阵单元格给出R行C列的矩阵,其中的单元格的整数坐标为(r, c),满足0 <= r < R且0 <= c < C。另外,我们在该矩阵中给出了一个坐标为(r0, c0)的单元格。返回矩阵中的所有单元格的坐标,并按到(r0, c0)的距离从最小到最大的顺序排,其中,两单元格(r1, c1)和(r2, c2)之间的距离是曼哈顿距离, | r1 - r2 | + | c1 - c2 |。(你可以按任何满足此条件的顺序返回答案。)示例1:输入:R = 1,原创 2020-10-15 19:51:53 · 250 阅读 · 0 评论 -
非递增顺序的最小子序列(python)
1403.非递增顺序的最小子序列给你一个数组nums,请你从中抽取一个子序列,满足该子序列的元素之和严格大于未包含在该子序列中的各元素之和。如果存在多个解决方案,只需返回长度最小的子序列。如果仍然有多个解决方案,则返回元素之和最大的子序列。与子数组不同的地方在于,「数组的子序列」不强调元素在原数组中的连续性,也就是说,它可以通过从数组中分离一些(也可能不分离)元素得到。注意,题目数据保证满足所有约束条件的解决方案是唯一的。同时,返回的答案应当按非递增顺序排列。示例1:输入:nums = [4,原创 2020-10-15 19:51:13 · 504 阅读 · 0 评论 -
数组的相对排序(python)
1122.数组的相对排序给你两个数组,arr1和arr2,arr2中的元素各不相同arr2中的每个元素都出现在arr1中对arr1中的元素进行排序,使arr1中项的相对顺序和arr2中的相对顺序相同。未在arr2中出现过的元素需要按照升序放在arr1的末尾。示例:输入:arr1 = [2, 3, 1, 3, 2, 4, 6, 7, 9, 2, 19], arr2 = [2, 1, 4, 3, 9, 6]输出:[2, 2, 2, 1, 4, 3, 3, 9, 6, 7, 19]def func(ar原创 2020-10-15 19:50:31 · 606 阅读 · 1 评论 -
重新排列字符串(python)
1528.重新排列字符串给你一个字符串s和一个长度相同的整数数组indices 。请你重新排列字符串s ,其中第i个字符需要移动到indices[i]指示的位置。返回重新排列后的字符串。示例1:输入:s = “codeleet”, indices = [4, 5, 6, 7, 0, 2, 1, 3]输出:“leetcode”解释:如图所示,“codeleet"重新排列后变为"leetcode” 。示例2:输入:s = “abc”, indices = [0, 1, 2]输出:“abc”解原创 2020-10-15 19:48:10 · 1779 阅读 · 0 评论 -
根据数字二进制下1的数目排序(python)
1356.根据数字二进制下1的数目排序给你一个整数数组arr 。请你将数组中的元素按照其二进制表示中数字1的数目升序排序。如果存在多个数字二进制中1的数目相同,则必须将它们按照数值大小升序排列。请你返回排序后的数组。示例1:输入:arr = [0, 1, 2, 3, 4, 5, 6, 7, 8]输出:[0, 1, 2, 4, 8, 3, 5, 6, 7]解释:[0]是唯一一个有0个1的数。[1, 2, 4, 8]都有1个1 。[3, 5, 6]有2个1 。[7]有3个1 。按照1的个数排序原创 2020-10-15 19:47:26 · 453 阅读 · 0 评论 -
早餐组合(python)
LCP 18. 早餐组合小扣在秋日市集选择了一家早餐摊位,一维整型数组 staple 中记录了每种主食的价格,一维整型数组 drinks 中记录了每种饮料的价格。小扣的计划选择一份主食和一款饮料,且花费不超过 x 元。请返回小扣共有多少种购买方案。注意:答案需要以 1e9 + 7 (1000000007) 为底取模,如:计算初始结果为:1000000008,请返回 1示例 1:输入:staple = [10,20,5], drinks = [5,5,2], x = 15输出:6解释:小扣有 6原创 2020-10-12 15:43:05 · 598 阅读 · 0 评论 -
滑动窗口的最大值(python)
剑指 Offer 59 - I. 滑动窗口的最大值给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7]解释:滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7原创 2020-10-12 15:41:36 · 404 阅读 · 0 评论 -
翻转单词顺序(python)
剑指Offer58 - I.翻转单词顺序输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. “,则输出"student. a am I”。示例1:输入: “the sky is blue”输出: “blue is sky the”示例2:输入: " hello world! "输出: “world! hello”解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括原创 2020-10-12 15:38:23 · 2526 阅读 · 0 评论 -
速算机器人
LCP 17. 速算机器人小扣在秋日市集发现了一款速算机器人。店家对机器人说出两个数字(记作 x 和 y),请小扣说出计算指令:“A” 运算:使 x = 2 * x + y;“B” 运算:使 y = 2 * y + x。在本次游戏中,店家说出的数字为 x = 1 和 y = 0,小扣说出的计算指令记作仅由大写字母 A、B 组成的字符串 s,字符串中字符的顺序表示计算顺序,请返回最终 x 与 y 的和为多少。示例 1:输入:s = “AB”输出:4解释:经过一次 A 运算后,x = 2,原创 2020-10-12 15:37:36 · 266 阅读 · 0 评论 -
礼物的最大价值(python)
47.礼物的最大价值在一个m * n的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例1:输入:[[1, 3, 1],[1, 5, 1],[4, 2, 1]]输出: 12解释: 路径1→3→5→2→1可以拿到最多价值的礼物def func(grid): m, n = len(grid), len(原创 2020-10-12 15:36:43 · 385 阅读 · 0 评论 -
将矩阵按对角线排序
1329. 将矩阵按对角线排序给你一个 m * n 的整数矩阵 mat ,请你将同一条对角线上的元素(从左上到右下)按升序排序后,返回排好序的矩阵。示例 1:输入:mat = [[3,3,1,1],[2,2,1,2],[1,1,1,2]]输出:[[1,1,1,1],[1,2,2,2],[1,2,3,3]]def func(mat): m, n = len(mat), len(mat[0]) start_point = [(i, 0) for i in range(0, m)] +原创 2020-10-12 15:35:37 · 839 阅读 · 0 评论 -
面试题 16.16. 部分排序(python)
面试题 16.16. 部分排序给定一个整数数组,编写一个函数,找出索引m和n,只要将索引区间[m,n]的元素排好序,整个数组就是有序的。注意:n-m尽量最小,也就是说,找出符合条件的最短序列。函数返回值为[m,n],若不存在这样的m和n(例如整个数组是有序的),请返回[-1,-1]。示例:输入: [1,2,4,7,10,11,7,12,6,7,16,18,19]输出: [3,9]def func(array): nums = sorted(array) n = len(nums原创 2020-10-12 15:34:17 · 183 阅读 · 0 评论