一、题目描述
给你一个整数数组nums
,你可以对它进行一些操作。
每次操作中,选择任意一个nums[i]
,删除它并获得nums[i]
的点数。之后,你必须删除所有等于nums[i] - 1
和nums[i] + 1
的元素。
开始你拥有0
个点数。返回你能通过这些操作获得的最大点数。
示例 1
输入: nums = [3, 4, 2]
输出: 6
解释:
删除4
获得4
个点数,因此3
也被删除。
之后,删除2
获得2
个点数。总共获得6
个点数。
给你一个整数数组nums
,你可以对它进行一些操作。
每次操作中,选择任意一个nums[i]
,删除它并获得nums[i]
的点数。之后,你必须删除所有等于nums[i] - 1
和nums[i] + 1
的元素。
开始你拥有0
个点数。返回你能通过这些操作获得的最大点数。
示例 1
输入: nums = [3, 4, 2]
输出: 6
解释:
删除4
获得4
个点数,因此3
也被删除。
之后,删除2
获得2
个点数。总共获得6
个点数。
给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。
注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。
返回一个表示每个字符串片段的长度的列表。
示例 1
输入: s = "ababcbacadefegdehijhklij"
输出: [9, 7, 8]
解释:
划分结果为"ababcbaca"
、"defegde"
、"hijhklij"
。
每个字母最多出现在一个片段中。
像"ababcbacadefegde"
, "hijhklij"
这样的划分是错误的,因为划分的片段数较少。
给你一个整数数组nums
,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。
数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。
示例 1
输入: nums = [4, 6, 7, 7]
输出: [[4, 6], [4, 6, 7], [4, 6, 7, 7], [4, 7], [4, 7, 7], [6, 7], [6, 7, 7], [7, 7]]
编写一个程序,通过填充空格来解决数独问题。
数独的解法需遵循如下规则:
1-9
在每一行只能出现一次。1-9
在每一列只能出现一次。1-9
在每一个以粗实线分隔的3x3
宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用'.'
表示。
示例 1
输入: board =
请你判断一个9 x 9
的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。
1-9
在每一行只能出现一次。1-9
在每一列只能出现一次。1-9
在每一个以粗实线分隔的3x3
宫内只能出现一次。(请参考示例图)注意:
'.'
表示。给定一个仅包含数字2-9
的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。
给出数字到字母的映射如下(与电话按键相同)。注意1
不对应任何字母。
示例 1
输入: digits = "23"
输出: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]
给定两个整数数组inorder
和postorder
,其中inorder
是二叉树的中序遍历,postorder
是同一棵树的后序遍历,请你构造并返回这颗二叉树。
示例 1
输入: inorder = [9, 3, 15, 20, 7], postorder = [9, 15, 7, 20, 3]
输出: [3, 9, 20, null, null, 15, 7]
给定两个整数数组preorder
和inorder
,其中preorder
是二叉树的先序遍历,inorder
是同一棵树的中序遍历,请构造二叉树并返回其根节点。
示例 1
输入: preorder = [3, 9, 20, 15, 7], inorder = [9, 3, 15, 20, 7]
输出: [3, 9, 20, null, null, 15, 7]
给你一个整数数组nums
和一个整数k
,请你返回其中出现频率前k
高的元素。你可以按任意顺序返回答案。
示例 1
输入: nums = [1, 1, 1, 2, 2, 3], k = 2
输出: [1, 2]
示例 2
输入: nums = [1], k = 1
输出: [1]
提示
给你四个整数数组nums1
、nums2
、nums3
和nums4
,数组长度都是n
,请你计算有多少个元组(i, j, k, l)
能满足:
0 <= i, j, k, l < n
nums1[i] + nums2[j] + nums3[k] + nums4[l] == 0
示例 1
输入: nums1 = [1, 2], nums2 = [-2, -1], nums3 = [-1, 2], nums4 = [0, 2]
输出: 2
解释: 两个元组如下: