自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(225)
  • 收藏
  • 关注

原创 面试题 08.03. 魔术索引

题目描述:魔术索引。 在数组A[0…n-1]中,有所谓的魔术索引,满足条件A[i] = i。给定一个有序整数数组,编写一种方法找出魔术索引,若有的话,在数组A中找出一个魔术索引,如果没有,则返回-1。若有多个魔术索引,返回索引值最小的一个。示例1:输入:nums = [0, 2, 3, 4, 5]输出:0说明: 0下标的元素为0示例2:输入:nums = [1, 1, 1]输出:1提示:nums长度在[1, 1000000]之间方法1:主要思路:(1)就直接的遍历一遍,找到结果,直

2020-07-31 09:10:44 74

原创 1143 最长公共子序列

题目描述:给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个字符串没有公共子序列,则返回 0。示例 1:输入:text1 = “abcde”, text2 =

2020-07-30 17:30:01 130

原创 29 两数相除

题目描述:给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3输出: 3解释: 10/3 = truncate(3.33333…) = trunca

2020-07-30 17:24:05 226

原创 343 整数拆分

题目描述:给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例 2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。说明: 你可以假设 n 不小于 2 且不大于 58。方法1:动态规划主要思路:(1)定义动态数组 dp[ i ] 表示数字 i 可以拆分出来的最大的积;(2)对于 i,其前拆分成两部分,

2020-07-30 13:41:39 246

原创 130 被围绕的区域

题目描述:给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例:X X X XX O O XX X O XX O X X运行你的函数后,矩阵变为:X X X XX X X XX X X XX O X X解释:被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上,或不与边界上的 ‘O’ 相连的 ‘O’ 最终都会被填充为 ‘X’。如果两个元素在水

2020-07-29 21:34:43 156

原创 398 随机数索引

题目描述:给定一个可能含有重复元素的整数数组,要求随机输出给定的数字的索引。 您可以假设给定的数字一定存在于数组中。注意:数组大小可能非常大。 使用太多额外空间的解决方案将不会通过测试。示例:int[] nums = new int[] {1,2,3,3,3};Solution solution = new Solution(nums);// pick(3) 应该返回索引 2,3 或者 4。每个索引的返回概率应该相等。solution.pick(3);// pick(1) 应该返回 0。因

2020-07-29 14:38:50 172

原创 382 链表随机节点

题目描述:给定一个单链表,随机选择链表的一个节点,并返回相应的节点值。保证每个节点被选的概率一样。进阶:如果链表十分大且长度未知,如何解决这个问题?你能否使用常数级空间复杂度实现?示例:// 初始化一个单链表 [1,2,3].ListNode head = new ListNode(1);head.next = new ListNode(2);head.next.next = new ListNode(3);Solution solution = new Solution(head);/

2020-07-29 14:29:17 147

原创 214 最短回文串

题目描述:给定一个字符串 s,你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。示例 1:输入: “aacecaaa”输出: “aaacecaaa”示例 2:输入: “abcd”输出: “dcbabcd”方法1:主要思路:(1)使用双指针,每次找出包含可能的最大回文串的最短的长度,然后将该长度后面的部分先反转了,加到当前字符串的前面,并对找出的包含最大回文串的最短的长度的字符串递归重复上述过程;class Solution {public:

2020-07-29 11:22:11 271

原创 645 错误的集合

题目描述:集合 S 包含从1到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个元素复制了成了集合里面的另外一个元素的值,导致集合丢失了一个整数并且有一个元素重复。给定一个数组 nums 代表了集合 S 发生错误后的结果。你的任务是首先寻找到重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入: nums = [1,2,2,4]输出: [2,3]注意:给定数组的长度范围是 [2, 10000]。给定的数组是无序的。方法1:使用标识数组主要思路:(1)使用标识数

2020-07-29 08:18:47 127

原创 678 有效的括号字符串

题目描述:给定一个只包含三种字符的字符串:( ,) 和 *,写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下规则:任何左括号 ( 必须有相应的右括号 )。任何右括号 ) 必须有相应的左括号 ( 。左括号 ( 必须在对应的右括号之前 )。可以被视为单个右括号 ) ,或单个左括号 ( ,或一个空字符串。一个空字符串也被视为有效字符串。示例 1:输入: “()”输出: True示例 2:输入: “(*)”输出: True示例 3:输入: “(*))”输出: True

2020-07-28 22:09:23 248

原创 268 缺失数字

题目描述:给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。示例 1:输入: [3,0,1]输出: 2示例 2:输入: [9,6,4,2,3,5,7,0,1]输出: 8说明:你的算法应具有线性时间复杂度。你能否仅使用额外常数空间来实现?方法1:异或操作主要思路:(1)成对元素的异或操作结果为0,利用这个特性,把所有元素和索引异或了,最后再和 nums.size()异或,既可获得确实的数;class Solution {pu

2020-07-28 21:10:10 150

原创 20 有效的括号

题目描述:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: “([)]”输出: false示例 5:输入: “{[]}”输出: true方法1:利用栈主要思

2020-07-28 20:51:35 250

原创 516 最长回文子序列

题目描述:给定一个字符串 s ,找到其中最长的回文子序列,并返回该序列的长度。可以假设 s 的最大长度为 1000 。示例 1:输入:“bbbab”输出:4一个可能的最长回文子序列为 “bbbb”。示例 2:输入:“cbbd”输出:2一个可能的最长回文子序列为 “bb”。提示:1 <= s.length <= 1000s 只包含小写英文字母方法1:动态规划主要思路:(1)定义动态数组 dp[ i ][ j ] 的定义为 从 i 到 j 的字符子串范围内,有回

2020-07-28 15:29:48 104

原创 1119 删去字符串中的元音

题目描述:给你一个字符串 S,请你删去其中的所有元音字母( ‘a’,‘e’,‘i’,‘o’,‘u’),并返回这个新字符串。示例 1:输入:“leetcodeisacommunityforcoders”输出:“ltcdscmmntyfrcdrs”示例 2:输入:“aeiou”输出:""提示:S 仅由小写英文字母组成。1 <= S.length <= 1000方法1:从前向后删除主要思路:(1)直观的想,就是从前相后遍历,遇到元音字符就直接删除,并更新索引;(2)使用数组

2020-07-28 15:06:54 580

原创 剑指 Offer 03 数组中重复的数字

题目描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000方法1:借助unordered_set主要思路:(1)直观的想,就是把之前出现过的数字进行标识,当再次出现同样的数字时,能够立刻知道其之前是否出现过

2020-07-28 14:57:33 231

原创 1209 删除字符串中的所有相邻重复项 II

题目描述:给你一个字符串 s,「k 倍重复项删除操作」将会从 s 中选择 k 个相邻且相等的字母,并删除它们,使被删去的字符串的左侧和右侧连在一起。你需要对 s 重复进行无限次这样的删除操作,直到无法继续为止。在执行完所有删除操作后,返回最终得到的字符串。本题答案保证唯一。示例 1:输入:s = “abcd”, k = 2输出:“abcd”解释:没有要删除的内容。示例 2:输入:s = “deeedbbcccbdaa”, k = 3输出:“aa”解释:先删除 “eee” 和 “cc

2020-07-28 14:46:20 232

原创 82 删除排序链表中的重复元素 II

题目描述:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例 2:输入: 1->1->1->2->3输出: 2->3方法1:主要思路:(1)直观的想,就是找到相同的结点,跳过相同的结点即可;(2)使用三个指针,第一个指向已经去重后的结尾,另外两个分别指向当前结点和下一个结点来判断异同,若是不同

2020-07-28 14:10:20 154

原创 1047 删除字符串中的所有相邻重复项

题目描述:给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:“abbaca”输出:“ca”解释:例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操作,所以最后的字符串为 “ca”。提示:1 &

2020-07-28 13:44:24 114

原创 42 接雨水

题目描述:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6方法1:备忘录主要思路:(1)对单个的位置进行分析,则该位置能够存储的雨水的数量,为其左边最高的高度和右边的最高的高度中的较小值减去当前高度

2020-07-28 11:29:00 187

原创 1011 在 D 天内送达包裹的能力

题目描述:传送带上的包裹必须在 D 天内从一个港口运送到另一个港口。传送带上的第 i 个包裹的重量为 weights[i]。每一天,我们都会按给出重量的顺序往传送带上装载包裹。我们装载的重量不会超过船的最大运载重量。返回能在 D 天内将传送带上的所有包裹送达的船的最低运载能力。示例 1:输入:weights = [1,2,3,4,5,6,7,8,9,10], D = 5输出:15解释:船舶最低载重 15 就能够在 5 天内送达所有包裹,如下所示:第 1 天:1, 2, 3, 4, 5第

2020-07-28 10:49:29 113

原创 774 最小化去加油站的最大距离

题目描述:假设我们在一条水平数轴上,列表 stations 来表示各个加油站的位置,加油站分别在 stations[0], stations[1], …, stations[N-1] 的位置上,其中 N = stations.length。现在我们希望增加 K 个新的加油站,使得相邻两个加油站的距离 D 尽可能的最小,请你返回 D 可能的最小值。示例:输入:stations = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], K = 9输出:0.500000注:station

2020-07-28 10:19:06 536

原创 875 爱吃香蕉的珂珂

题目描述:珂珂喜欢吃香蕉。这里有 N 堆香蕉,第 i 堆中有 piles[i] 根香蕉。警卫已经离开了,将在 H 小时后回来。珂珂可以决定她吃香蕉的速度 K (单位:根/小时)。每个小时,她将会选择一堆香蕉,从中吃掉 K 根。如果这堆香蕉少于 K 根,她将吃掉这堆的所有香蕉,然后这一小时内不会再吃更多的香蕉。珂珂喜欢慢慢吃,但仍然想在警卫回来前吃掉所有的香蕉。返回她可以在 H 小时内吃掉所有香蕉的最小速度 K(K 为整数)。示例 1:输入: piles = [3,6,7,11], H = 8输

2020-07-28 09:11:39 131

原创 372 超级次方

题目描述:你的任务是计算 ab 对 1337 取模,a 是一个正整数,b 是一个非常大的正整数且会以数组形式给出。示例 1:输入: a = 2, b = [3]输出: 8示例 2:输入: a = 2, b = [1,0]输出: 1024方法1:主要思路:(1)首先要了解为了避免数值的溢出,通常的求中位值的方式是将 (a+b)/2变为 a+(b-a)/2的途径,同样求模运算也有类似的 (a*b)%c 变为 (a%c)(b%c)%c;(2)将vector中的表示每次抽出最后一位,转化为乘积

2020-07-27 22:49:45 275

原创 354 俄罗斯套娃信封问题

题目描述:给定一些标记了宽度和高度的信封,宽度和高度以整数对形式 (w, h) 出现。当另一个信封的宽度和高度都比这个信封大的时候,这个信封就可以放进另一个信封里,如同俄罗斯套娃一样。请计算最多能有多少个信封能组成一组“俄罗斯套娃”信封(即可以把一个信封放到另一个信封里面)。说明:不允许旋转信封。示例:输入: envelopes = [[5,4],[6,4],[6,7],[2,3]]输出: 3解释: 最多信封的个数为 3, 组合为: [2,3] => [5,4] => [6,7]

2020-07-27 21:17:59 134

原创 986 区间列表的交集

题目描述:给定两个由一些 闭区间 组成的列表,每个区间列表都是成对不相交的,并且已经排序。返回这两个区间列表的交集。(形式上,闭区间 [a, b](其中 a <= b)表示实数 x 的集合,而 a <= x <= b。两个闭区间的交集是一组实数,要么为空集,要么为闭区间。例如,[1, 3] 和 [2, 4] 的交集为 [2, 3]。)示例:输入:A = [[0,2],[5,10],[13,23],[24,25]], B = [[1,5],[8,12],[15,24],[25,2

2020-07-27 19:20:51 138

原创 733 图像渲染

题目描述:有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这四个方向上符合条件的像素点与他们对应四个方向上像素值与初始坐标相同的相连像素点,……,重复该过程。将所有有记录的像素点的颜色值改为新的颜色值。最后返回经过上

2020-07-27 17:07:53 195

原创 43 字符串相乘

题目描述:给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = “2”, num2 = “3”输出: “6”示例 2:输入: num1 = “123”, num2 = “456”输出: “56088”说明:num1 和 num2 的长度小于110。num1 和 num2 只包含数字 0-9。num1 和 num2 均不以零开头,除非是数字 0 本身。不能使用任何标准库的大数类型(

2020-07-27 16:49:46 192

原创 344 反转字符串

题目描述:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:[“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h”,“a”,“n”,“n”,“a”,“H”]

2020-07-27 15:17:35 161

原创 713 乘积小于K的子数组

题目描述:给定一个正整数数组 nums。找出该数组内乘积小于 k 的连续的子数组的个数。示例 1:输入: nums = [10,5,2,6], k = 100输出: 8解释: 8个乘积小于100的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。需要注意的是 [10,5,2] 并不是乘积小于100的子数组。说明:0 < nums.length <= 500000 < nums[i] < 1000

2020-07-27 15:02:37 121

原创 724 寻找数组的中心索引

题目描述:给定一个整数类型的数组 nums,请编写一个能够返回数组 “中心索引” 的方法。我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入:nums = [1, 7, 3, 6, 5, 6]输出:3解释:索引 3 (nums[3] = 6) 的左侧数之和 (1 + 7 + 3 = 11),与右侧数之和 (5 + 6 = 11

2020-07-27 14:38:33 108

原创 974 和可被 K 整除的子数组

题目描述:给定一个整数数组 A,返回其中元素之和可被 K 整除的(连续、非空)子数组的数目。示例:输入:A = [4,5,0,-2,-3,1], K = 5输出:7解释:有 7 个子数组满足其元素之和可被 K = 5 整除:[4, 5, 0, -2, -3, 1], [5], [5, 0], [5, 0, -2, -3], [0], [0, -2, -3], [-2, -3]提示:1 <= A.length <= 30000-10000 <= A[i] <= 10

2020-07-27 14:20:55 123

原创 560 和为K的子数组

题目描述:给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。说明 :数组的长度为 [1, 20,000]。数组中元素的范围是 [-1000, 1000] ,且整数 k 的范围是 [-1e7, 1e7]。方法1:使用unordered_map主要思路:(1)使用unordered_map统计到当前元素为止,之前出现过的从头到各个位置的和的

2020-07-27 13:45:09 121

原创 969 煎饼排序

题目描述:给定数组 A,我们可以对其进行煎饼翻转:我们选择一些正整数 k <= A.length,然后反转 A 的前 k 个元素的顺序。我们要执行零次或多次煎饼翻转(按顺序一次接一次地进行)以完成对数组 A 的排序。返回能使 A 排序的煎饼翻转操作所对应的 k 值序列。任何将数组排序且翻转次数在 10 * A.length 范围内的有效答案都将被判断为正确。示例 1:输入:[3,2,4,1]输出:[4,2,4,3]解释:我们执行 4 次煎饼翻转,k 值分别为 4,2,4,和 3。初始状

2020-07-27 12:28:53 126

原创 392 判断子序列

题目描述:给定字符串 s 和 t ,判断 s 是否为 t 的子序列。你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。示例 1:s = “abc”, t = “ahbgdc”返回 true.示例 2:s = “axc”, t = “

2020-07-27 09:17:06 109

原创 445 两数相加 II

题目描述:给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入:(7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 8 -> 0 -> 7方法1:借助栈实现主要思路:(1)将链表中的数据存储

2020-07-27 08:43:21 132

原创 371 两整数之和

题目描述:不使用运算符 + 和 - ​​​​​​​,计算两整数 ​​​​​​​a 、b ​​​​​​​之和。示例 1:输入: a = 1, b = 2输出: 3示例 2:输入: a = -2, b = 3输出: 1方法1:位操作主要思路:(1)使用异或操作,获得a,b之间的不能进位的位置的数字和;(2)使用与操作,获得a,b之间的能进位的位置上的1的表示,然后将其左移一位,作为进位值;(3)然后在循环中,再重复上述操作,知道b为0为止;class Solution {public

2020-07-27 08:00:53 124

原创 22 括号生成

题目描述:数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例:输入:n = 3输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]方法1:动态规划主要思路:(1)这道题如果想到思路的,其实挺简单的,主要就是使用已生成的括号组成,来组合成新生成的括号组成;(2)使用动态数组vector<vector> dp(n+1);其中dp[ i ] 表示当 i 对括号时,可以生成的合法的括

2020-07-26 20:52:34 330

原创 1117 H2O 生成

题目描述:现在有两种线程,氧 oxygen 和氢 hydrogen,你的目标是组织这两种线程来产生水分子。存在一个屏障(barrier)使得每个线程必须等候直到一个完整水分子能够被产生出来。氢和氧线程会被分别给予 releaseHydrogen 和 releaseOxygen 方法来允许它们突破屏障。这些线程应该三三成组突破屏障并能立即组合产生一个水分子。你必须保证产生一个水分子所需线程的结合必须发生在下一个水分子产生之前。换句话说:如果一个氧线程到达屏障时没有氢线程到达,它必须等候直到两个氢

2020-07-26 15:36:36 231

原创 1116 打印零与奇偶数

题目描述:假设有这么一个类:class ZeroEvenOdd {public ZeroEvenOdd(int n) { … } // 构造函数public void zero(printNumber) { … } // 仅打印出 0public void even(printNumber) { … } // 仅打印出 偶数public void odd(printNumber) { … } // 仅打印出 奇数}相同的一个 ZeroEvenOdd 类实例将会传递给三个不同

2020-07-26 14:55:02 440

原创 1115 交替打印FooBar

题目描述:我们提供一个类:class FooBar {public void foo() {for (int i = 0; i < n; i++) {print(“foo”);}}public void bar() {for (int i = 0; i < n; i++) {print(“bar”);}}}两个不同的线程将会共用一个 FooBar 实例。其中一个线程将会调用 foo() 方法,另一个线程将会调用 bar() 方法。请设计修改程序,以确保 “fooba

2020-07-26 13:44:38 162

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除