这次我只做对一题. 原因是题目返回值类型有误,写的是 String[] ,实际上应该返回 List<String> . 好吧,只能自认倒霉.就当涨涨经验. 5068. 前后拼接 解题思路 大致思路是用两层循环检查每两个短语是否能前后拼接成新短语.如果可以前后拼接,那么将它们拼接成新短语,并添加到结果列表.最后将列表升序返回. 由于需要第一个单词和最后一个单词,因此需要先进行分割处理,将得到的第一个单词和最后一个单词分别保存.由于可以确定大小,因此直接用二维数组保存即可. // ht[i][0]…
1287.有序数组中出现次数超过25%的元素 1288.删除被覆盖区间 1286.字母组合迭代器 1289.下降路径最小和 II 下降和不能只保留原数组中最小的两个,hacked. 1287.有序数组中出现次数超过25%的元素 1287.有序数组中出现次数超过25%的元素 给你一个非递减的 有序 整数数组,已知这个数组中恰好有一个整数,它的出现次数超过数组元素总数的 25%. 请你找到并返回这个整数 示例: **输入:** arr = [1,2,2,6,6,6,6,7,10] **输出:** 6…
基础的 api 还是不够熟悉啊 5112. 十六进制魔术数字 class Solution { public: char *lltoa(long long num, char *str, int radix) { const char index[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; unsigned long long unum; int i = 0, j, k; if(radix == 10 && num <…
第一次提交: class Solution: def isArmstrong(self, N: int) -> bool: n = N l = len(str(N)) res = 0 while N: a = N % 10 res += a**l N = N//10 if res == n: return True return False 另: class Solution: def isArmstrong(self, N: int) -> bool: s=str(N) l=len(s) t…
第一次提交: class Solution: def largestUniqueNumber(self, A: List[int]) -> int: dict = {} for i in A: if i not in dict: dict[i] = 1 else: dict[i] += 1 res = -1 for i in dict: if dict[i]==1 and i>res: res = i return res 另: class Solution: def largestUniqu…
第一题 用一个新数组newSalary保存去掉最低和最高工资的工资列表,然后遍历newSalary,计算总和,除以元素个数,就得到了平均值. class Solution { public: double average(vector<int>& salary) { sort(salary.begin(), salary.end()); vector<int> newSalary; for(int i = 1; i < salary.size() - 1; ++i)…
这套题不算难,但是因为是昨天晚上太晚了,好久没有大晚上写过代码了,有点不适应,今天上午一看还是挺简单的 5177. 转变日期格式   给你一个字符串 date ,它的格式为 Day Month Year ,其中: Day 是集合 {"1st", "2nd", "3rd", "4th", ..., "30th", "31st"} 中的一个元素. Month 是集合 {"Jan&q…
题目描述: 自己的提交: class Solution: def minAvailableDuration(self, slots1: List[List[int]], slots2: List[List[int]], duration: int) -> List[int]: res = [] i,j = 0,0 for start,end in slots1: if end - start < duration: i += 1 if i == len(slots1): return [] f…
题目描述: 自己的提交: class Solution: def missingNumber(self, arr: List[int]) -> int: if len(arr) == 2: return arr[0] + (arr[1] - arr[0]) //2 if len(set(arr)) == 1: return arr[0] if arr[1]-arr[0] > 0: m = min(arr[1]-arr[0],arr[-1]-arr[-2]) else: m = max(arr[…
Leetcode第 217 场周赛 比赛链接:点这里 做完前两题我就知道今天的竞赛我已经结束了 这场比赛思维量还是比较大的. 1673. 找出最具竞争力的子序列 题目 给你一个整数数组 nums 和一个正整数 k ,返回长度为 k 且最具 竞争力 的 nums 子序列. 数组的子序列是从数组中删除一些元素(可能不删除元素)得到的序列. 在子序列 a 和子序列 b 第一个不相同的位置上,如果 a 中的数字小于 b 中对应的数字,那么我们称子序列 a 比子序列 b(相同长度下)更具 竞争力 . 例如…