- 博客(254)
- 收藏
- 关注
原创 【LeetCode】第981题——基于时间的键值存储(难度:中等)
【LeetCode】第981题——基于时间的键值存储(难度:中等)题目描述解题思路代码详解注意点题目描述创建一个基于时间的键值存储类 TimeMap,它支持下面两个操作:set(string key, string value, int timestamp)存储键 key、值 value,以及给定的时间戳 timestamp。get(string key, int timestamp)返回先前调用 set(key, value, timestamp_prev) 所存储的值,其中 time
2021-07-10 09:31:59
520
原创 【LeetCode】第930题——和相同的二元子数组(难度:中等)
【LeetCode】第930题——和相同的二元子数组(难度:中等)题目描述解题思路代码详解思路一:哈希表+前缀和思路二:滑窗注意点题目描述给你一个二元数组 nums ,和一个整数 goal ,请你统计并返回有多少个和为 goal 的 非空 子数组。子数组 是数组的一段连续部分。示例 1:输入:nums = [1,0,1,0,1], goal = 2输出:4解释:如下面黑体所示,有 4 个满足题目要求的子数组:[1,0,1,0,1][1,0,1,0,1][1,0,1,0,1][1,
2021-07-08 09:30:36
756
原创 【LeetCode】第1711题——大餐计数(难度:中等)
【LeetCode】第1711题——大餐计数(难度:中等)题目描述解题思路代码详解注意点题目描述大餐 是指 恰好包含两道不同餐品 的一餐,其美味程度之和等于 2 的幂。你可以搭配 任意 两道餐品做一顿大餐。给你一个整数数组 deliciousness ,其中 deliciousness[i] 是第 i 道餐品的美味程度,返回你可以用数组中的餐品做出的不同 大餐 的数量。结果需要对 109 + 7 取余。注意,只要餐品下标不同,就可以认为是不同的餐品,即便它们的美味程度相
2021-07-07 09:14:43
555
原创 【LeetCode】剑指60——n个骰子的点数(难度:中等)
【LeetCode】剑指60——n个骰子的点数(难度:中等)题目描述解题思路代码详解注意点题目描述把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。你需要用一个浮点数数组返回答案,其中第 i 个元素代表这 n 个骰子所能掷出的点数集合中第 i 小的那个的概率。示例 1:输入: 1输出: [0.16667,0.16667,0.16667,0.16667,0.16667,0.16667]示例 2:输入: 2输出: [0.02778,0.055
2021-07-03 22:00:14
325
原创 【LeetCode】剑指63——股票的最大利润(难度:中等)
【LeetCode】剑指63——股票的最大利润(难度:中等)题目描述解题思路代码详解注意点题目描述假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。示例 2:输入: [7,6,4,3,1]输出:
2021-07-03 11:30:52
234
原创 【LeetCode】第451题——根据字符出现频率排序(难度:中等)
【LeetCode】第451题——根据字符出现频率排序(难度:中等)题目描述解题思路代码详解注意点题目描述给定一个字符串,请将字符串里的字符按照出现的频率降序排列。示例 1:输入:“tree”输出:“eert”解释:'e’出现两次,'r’和’t’都只出现一次。因此’e’必须出现在’r’和’t’之前。此外,"eetr"也是一个有效的答案。示例 2:输入:“cccaaa”输出:“cccaaa”解释:'c’和’a’都出现三次。此外,"aaaccc"也是有效的答案。注意"caca
2021-07-03 11:12:53
357
原创 【LeetCode】剑指66——构建乘积数组(难度:中等)
【LeetCode】剑指66——构建乘积数组(难度:中等)题目描述解题思路代码详解注意点题目描述给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。示例:输入: [1,2,3,4,5]输出: [120,60,40,30,24]提示:所有元素乘积之和不会溢出 32 位整数a.length <=
2021-06-29 08:57:03
236
原创 【LeetCode】剑指64——求1+2+…+n(难度:中等)
【LeetCode】剑指64——求1+2+…+n(难度:中等)题目描述解题思路代码详解注意点题目描述求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。示例 1:输入: n = 3输出: 6示例 2:输入: n = 9输出: 45限制:1 <= n <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/qiu-12
2021-06-28 11:12:13
236
原创 【LeetCode】剑指67——把字符串转换成整数(难度:中等)
【LeetCode】剑指67——把字符串转换成整数(难度:中等)题目描述解题思路代码详解注意点题目描述写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后
2021-06-27 08:53:56
197
原创 【LeetCode】剑指44——数字序列中某一位的数字(难度:中等)
【LeetCode】剑指44——数字序列中某一位的数字(难度:中等)题目描述解题思路代码详解注意点题目描述数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位是1,第19位是4,等等。请写一个函数,求任意第n位对应的数字。示例 1:输入:n = 3输出:3示例 2:输入:n = 11输出:0限制:0 <= n < 231来源:力扣(LeetCode)链接:https://lee
2021-06-26 09:02:17
299
原创 【LeetCode】第752题——打开转盘锁(难度:中等)
【LeetCode】第752题——打开转盘锁(难度:中等)题目描述解题思路代码详解注意点题目描述你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字: ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’ 。每个拨轮可以自由旋转:例如把 ‘9’ 变为 ‘0’,‘0’ 变为 ‘9’ 。每次旋转都只能旋转一个拨轮的一位数字。锁的初始数字为 ‘0000’ ,一个代表四个拨轮的数字的字符串。列表 deadends 包含了一组死亡数字,一旦拨轮的数字和列表里的任
2021-06-25 22:30:01
343
原创 【LeetCode】剑指49——丑数(难度:中等)
【LeetCode】剑指49——丑数(难度:中等)题目描述解题思路代码详解注意点题目描述我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。示例:输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。说明:1 是丑数。n 不超过1690。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/chou-shu-
2021-06-24 16:16:56
259
原创 【LeetCode】剑指38——字符串的排列(难度:中等)
【LeetCode】剑指38——字符串的排列(难度:中等)题目描述解题思路代码详解注意点题目描述输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s = “abc”输出:[“abc”,“acb”,“bac”,“bca”,“cab”,“cba”]限制:1 <= s 的长度 <= 8来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/zi-fu-chuan-de
2021-06-23 10:42:48
252
原创 【LeetCode】第1239题——串联字符串的最大长度(难度:中等)
【LeetCode】第1239题——串联字符串的最大长度(难度:中等)题目描述解题思路代码详解注意点题目描述给定一个字符串数组 arr,字符串 s 是将 arr 某一子序列字符串连接所得的字符串,如果 s 中的每一个字符都只出现过一次,那么它就是一个可行解。请返回所有可行解 s 中最长长度。示例 1:输入:arr = [“un”,“iq”,“ue”]输出:4解释:所有可能的串联组合是 “”,“un”,“iq”,“ue”,“uniq” 和 “ique”,最大长度为 4。示例 2:输入
2021-06-19 15:21:53
454
原创 【LeetCode】剑指14—— II. 剪绳子II(难度:中等)
【LeetCode】剑指14—— II. 剪绳子II(难度:中等)题目描述解题思路代码详解注意点题目描述给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m - 1] 。请问 k[0]k[1]…*k[m - 1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000
2021-06-09 10:53:21
219
原创 【LeetCode】剑指14—— I. 剪绳子(难度:中等)
【LeetCode】剑指14—— I. 剪绳子(难度:中等)题目描述解题思路代码详解思路一:遍历寻优思路二:数学法注意点题目描述给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m-1] 。请问 k[0]k[1]…*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。示例 1:输入: 2输出: 1解释: 2 = 1
2021-06-09 10:05:20
331
原创 【LeetCode】剑指13——机器人的运动范围(难度:中等)
【LeetCode】剑指13——机器人的运动范围(难度:中等)题目描述解题思路代码详解注意点题目描述地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?
2021-06-08 10:04:27
239
原创 【LeetCode】第1049题——最后一块石头的重量 II(难度:中等)
【LeetCode】第1049题——最后一块石头的重量 II(难度:中等)题目描述解题思路代码详解注意点题目描述有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x <= y。那么粉碎的可能结果如下:如果 x == y,那么两块石头都会被完全粉碎;如果 x != y,那么重量为 x 的石头将会完全粉碎,而重量为 y 的石头新重量为 y-x。最后,最多只会
2021-06-08 09:26:01
667
原创 【LeetCode】第494题——目标和(难度:中等)
【LeetCode】第494题——目标和(难度:中等)题目描述解题思路代码详解方法一:DFS方法二:背包问题注意点题目描述给你一个整数数组 nums 和一个整数 target 。向数组中的每个整数前添加 ‘+’ 或 ‘-’ ,然后串联起所有整数,可以构造一个 表达式 :例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" 。返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。示例 1
2021-06-07 10:46:51
1124
原创 【LeetCode】剑指15——二进制中1的个数(难度:简单)
【LeetCode】剑指15——二进制中1的个数(难度:简单)题目描述解题思路代码详解方法一:逐位与1方法二:n&(n-1)注意点题目描述请实现一个函数,输入一个整数(以二进制串形式),输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 0000000000000000000000000000101
2021-06-06 09:32:23
246
原创 【LeetCode】第474题——一和零(难度:中等)
【LeetCode】第474题——一和零(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个二进制字符串数组 strs 和两个整数 m 和 n 。请你找出并返回 strs 的最大子集的大小,该子集中 最多 有 m 个 0 和 n 个 1 。如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。示例 1:输入:strs = [“10”, “0001”, “111001”, “1”, “0”], m = 5, n = 3输出:4解释:最多有 5 个 0 和 3 个
2021-06-06 09:13:58
373
原创 【LeetCode】剑指11——旋转数组的最小数字(难度:简单)
【LeetCode】剑指11——旋转数组的最小数字(难度:简单)题目描述解题思路代码详解注意点题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。示例 1:输入:[3,4,5,1,2]输出:1示例 2:输入:[2,2,2,0,1]输出:0来源:力扣(LeetCode)链接:https://leetcod
2021-06-05 10:48:39
138
原创 【LeetCode】剑指10——II.青蛙跳台问题(难度:简单)
【LeetCode】剑指11——II.青蛙跳台问题(难度:简单)题目描述解题思路代码详解注意点题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。示例 1:输入:n = 2输出:2示例 2:输入:n = 7输出:21示例 3:输入:n = 0输出:1提示:0 <= n <= 100来源:力扣(LeetC
2021-06-05 09:35:14
210
原创 【LeetCode】剑指10——I.斐波那契数列(难度:简单)
【LeetCode】剑指10——I.斐波那契数列(难度:中等)题目描述解题思路代码详解注意点题目描述写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008
2021-06-05 09:14:27
329
原创 【LeetCode】剑指09——用两个栈实现队列(难度:简单)
【LeetCode】剑指09——用两个栈实现队列(难度:简单)题目描述解题思路代码详解注意点题目描述用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:[“CQueue”,“appendTail”,“deleteHead”,“deleteHead”][[],[3],[],[]]输出:[null,null,3
2021-06-05 08:53:18
188
原创 【LeetCode】剑指07——重建二叉树(难度:中等)
【LeetCode】剑指07——重建二叉树(难度:中等)题目描述解题思路代码详解注意点题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7限制:0 <= 节点个数 <= 5000来源:力扣(L
2021-06-04 10:51:24
203
原创 【LeetCode】第525题——连续数组(难度:中等)
【LeetCode】第525题——连续数组(难度:中等)题目描述解题思路代码详解注意点题目描述给定一个二进制数组 nums , 找到含有相同数量的 0 和 1 的最长连续子数组,并返回该子数组的长度。示例 1:输入: nums = [0,1]输出: 2说明: [0, 1] 是具有相同数量0和1的最长连续子数组。示例 2:输入: nums = [0,1,0]输出: 2说明: [0, 1] (或 [1, 0]) 是具有相同数量0和1的最长连续子数组。提示:1 <= nums.len
2021-06-03 21:58:40
207
原创 【LeetCode】剑指06——从尾到头打印链表(难度:简单)
【LeetCode】剑指06——从尾到头打印链表(难度:简单)题目描述解题思路代码详解注意点题目描述输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]限制:0 <= 链表长度 <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof著作权归领扣网络所有。商业
2021-06-02 08:59:04
150
原创 【LeetCode】第523题——连续的子数组和(难度:中等)
【LeetCode】第523题——连续的子数组和(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个整数数组 nums 和一个整数 k ,编写一个函数来判断该数组是否含有同时满足下述条件的连续子数组:子数组大小 至少为 2 ,且子数组元素总和为 k 的倍数。如果存在,返回 true ;否则,返回 false 。如果存在一个整数 n ,令整数 x 符合 x = n * k ,则称 x 是 k 的一个倍数。示例 1:输入:nums = [23,2,4,6,7], k = 6输出
2021-06-02 08:46:29
452
原创 【LeetCode】剑指05——替换空格(难度:简单)
【LeetCode】剑指05——替换空格(难度:简单)题目描述解题思路代码详解注意点题目描述请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = “We are happy.”输出:“We%20are%20happy.”限制:0 <= s 的长度 <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof著作权归领扣网络所有。商业转载请联系官方
2021-06-01 11:14:33
91
原创 【LeetCode】第1174题——你能在你最喜欢的那天吃到你最喜欢的糖果吗(难度:中等)
【LeetCode】第1174题——你能在你最喜欢的那天吃到你最喜欢的糖果吗(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个下标从 0 开始的正整数数组 candiesCount ,其中 candiesCount[i] 表示你拥有的第 i 类糖果的数目。同时给你一个二维数组 queries ,其中 queries[i] = [favoriteTypei, favoriteDayi, dailyCapi] 。你按照如下规则进行一场游戏:你从第 0 天开始吃糖果。你在吃完 所有 第 i -
2021-06-01 10:47:02
341
原创 【LeetCode】剑指04——二维数组中的查找(难度:中等)
【LeetCode】剑指04——二维数组中的查找(难度:中等)题目描述解题思路代码详解方法一:二分查找方法二:线性查找注意点题目描述在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16, 22],[10,
2021-05-31 10:57:11
280
原创 【LeetCode】剑指03——数组中重复的数字(难度:简单)
【LeetCode】剑指03——数组中重复的数字(难度:简单)题目描述解题思路代码详解注意点题目描述找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000来源:力扣(LeetCode)链接:https://le
2021-05-31 09:25:06
169
原创 【LeetCode】第62题——不同路径(难度:中等)
【LeetCode】第62题——不同路径(难度:中等)题目描述解题思路代码详解注意点题目描述一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:输入:m = 3, n = 7输出:28示例 2:输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。1.向右 -&
2021-05-31 09:17:51
316
原创 【LeetCode】第61题——旋转链表(难度:中等)
【LeetCode】第61题——旋转链表(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。示例 1:输入:head = [1,2,3,4,5], k = 2输出:[4,5,1,2,3]示例 2:输入:head = [0,1,2], k = 4输出:[2,0,1]提示:链表中节点的数目在范围 [0, 500] 内-100 <= Node.val <= 1000 <= k &l
2021-05-31 08:59:29
324
原创 【LeetCode】第59题——螺旋矩阵II(难度:中等)
【LeetCode】第59题——螺旋矩阵II(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。示例 1:输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]提示:1 <= n <= 20来源:力扣(LeetCode)链接:https://leetcode-cn.com/
2021-05-30 08:42:45
291
原创 【LeetCode】第57题——插入区间(难度:中等)
【LeetCode】第57题——插入区间(难度:中等)题目描述解题思路代码详解注意点题目描述给你一个 无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。示例 1:输入:intervals = [[1,3],[6,9]], newInterval = [2,5]输出:[[1,5],[6,9]]示例 2:输入:intervals = [[1,2],[3,5],[6,7],[8,10],[12,16
2021-05-29 08:50:59
436
原创 【LeetCode】第477题——汉明距离总和(难度:中等)
【LeetCode】第477题——汉明距离总和(难度:中等)题目描述解题思路代码详解注意点题目描述两个整数的 汉明距离 指的是这两个数字的二进制数对应位不同的数量。计算一个数组中,任意两个数之间汉明距离的总和。示例:输入: 4, 14, 2输出: 6解释: 在二进制表示中,4表示为0100,14表示为1110,2表示为0010。(这样表示是为了体现后四位之间关系)所以答案为:HammingDistance(4, 14) + HammingDistance(4, 2) + HammingD
2021-05-28 08:52:20
191
原创 【LeetCode】第1190题——反转每对括号间的子串(难度:中等)
【LeetCode】第1190题——反转每对括号间的子串(难度:中等)题目描述解题思路代码详解注意点题目描述给出一个字符串 s(仅含有小写英文字母和括号)。请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。注意,您的结果中 不应 包含任何括号。示例 1:输入:s = “(abcd)”输出:“dcba”示例 2:输入:s = “(u(love)i)”输出:“iloveu”示例 3:输入:s = “(ed(et(oc))el)”输出:“leetc
2021-05-26 22:19:12
396
原创 【LeetCode】第810题——黑板异或游戏(难度:困难)
这里写自定义目录标题题目描述解题思路代码详解注意点题目描述黑板上写着一个非负整数数组 nums[i] 。Alice 和 Bob 轮流从黑板上擦掉一个数字,Alice 先手。如果擦除一个数字后,剩余的所有数字按位异或运算得出的结果等于 0 的话,当前玩家游戏失败。 (另外,如果只剩一个数字,按位异或运算得到它本身;如果无数字剩余,按位异或运算结果为 0。)换种说法就是,轮到某个玩家时,如果当前黑板上所有数字按位异或运算结果等于 0,这个玩家获胜。假设两个玩家每步都使用最优解,当且仅当 Alice 获胜
2021-05-22 09:11:42
509
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人