
LeetCode
文章平均质量分 60
LeetCode上的题目题解和周赛
Meet.
这个作者很懒,什么都没留下…
展开
-
LeetCode第348场周赛
LeetCode第348场周赛2023.6.4原创 2023-06-04 14:13:37 · 137 阅读 · 0 评论 -
LeetCode第347场周赛
2023.5.28LeetCode第347场周赛原创 2023-05-28 17:13:58 · 917 阅读 · 0 评论 -
LeetCode第343场周赛
2023.4.30LeetCode第343场周赛原创 2023-05-01 19:28:30 · 934 阅读 · 0 评论 -
LeetCode第340场周赛
2023.4.9LeetCode第340场周赛原创 2023-04-09 14:27:42 · 345 阅读 · 0 评论 -
LeetCode第339场周赛
2023.4.2LeetCode第339场周赛原创 2023-04-02 18:32:41 · 93 阅读 · 0 评论 -
LeetCode第338场周赛
2023.3.26LeetCode第338场周赛原创 2023-03-26 18:35:25 · 108 阅读 · 0 评论 -
LeetCode第337场周赛
2023.3.19LeetCode第337场周赛原创 2023-03-19 16:18:40 · 141 阅读 · 0 评论 -
LeetCode第336场周赛
2023.3.12LeetCode第336场周赛原创 2023-03-12 12:04:42 · 202 阅读 · 0 评论 -
LeetCode第335场周赛
2023.3.5LeetCode第335场周赛原创 2023-03-05 16:30:48 · 103 阅读 · 0 评论 -
LeetCode第334场周赛
2023.2.26LeetCode第334场周赛原创 2023-02-26 16:48:17 · 508 阅读 · 0 评论 -
LeetCode第333场周赛
2023.2.19LeetCode第333场周赛原创 2023-02-19 14:12:18 · 485 阅读 · 0 评论 -
LeetCode第332场周赛
2023.2.12LeetCode第332场周赛原创 2023-02-12 13:24:31 · 450 阅读 · 0 评论 -
LeetCode第331场周赛
2023.2.5LeetCode第331场周赛原创 2023-02-11 15:58:27 · 559 阅读 · 0 评论 -
LeetCode第330场周赛
2023.1.29LeetCode第330场周赛原创 2023-01-31 13:56:48 · 436 阅读 · 0 评论 -
LeetCode第328场周赛
2023.1.15LeetCode第328场周赛原创 2023-01-16 14:29:42 · 576 阅读 · 0 评论 -
LeetCode第327场周赛
2023.1.8LeetCode第327场周赛原创 2023-01-09 14:01:12 · 640 阅读 · 0 评论 -
LeetCode第95场双周赛
2023.1.7LeetCode第95场双周赛原创 2023-01-08 15:47:55 · 308 阅读 · 0 评论 -
LeetCode第284场周赛
2022.3.13LeetCode第284场周赛2200. 找出数组中的所有 K 近邻下标思路二分:找出nums中所有值为key的下标,对于每个元素,寻找前后两个最近的下标,若其中一个小于等于k,则该元素满足条件代码class Solution {public: vector<int> findKDistantIndices(vector<int>& nums, int key, int k) { int n = nums.size();原创 2022-03-15 11:22:25 · 1633 阅读 · 1 评论 -
LeetCode第272场周赛
2021.12.19LeetCode第272场周赛2108. 找出数组中的第一个回文字符串思路逐个判断是否为回文串判断时将两个指针放在头尾 逐一匹配代码class Solution {public: string firstPalindrome(vector<string>& words) { for (string s : words) { int i = 0, j = s.size() - 1; b原创 2021-12-23 14:09:14 · 627 阅读 · 0 评论 -
LeetCode2104.数组范围和(C++)
给你一个整数数组 nums 。nums 中,子数组的 范围 是子数组中最大元素和最小元素的差值。返回 nums 中 所有 子数组范围的 和 。子数组是数组中一个连续 非空 的元素序列。示例 1:输入:nums = [1,2,3]输出:4解释:nums 的 6 个子数组如下所示:[1],范围 = 最大 - 最小 = 1 - 1 = 0[2],范围 = 2 - 2 = 0[3],范围 = 3 - 3 = 0[1,2],范围 = 2 - 1 = 1[2,3],范围 = 3 - 2 = 1.原创 2021-12-13 20:22:26 · 1161 阅读 · 0 评论 -
LeetCode第271场周赛题解
2021.12.12LeetCode第271场周赛2103. 环和杆思路使用位运算记录状态每个int的三位表示三种颜色 包含三种颜色的值为7代码class Solution {public: int countPoints(string rings) { vector<int> state(10); unordered_map<char, int> mp = {{'R', 1}, {'G', 2}, {'B', 4}};原创 2021-12-13 12:16:17 · 453 阅读 · 0 评论 -
LeetCode第269场周赛题解
2021.11.28LeetCode第269场周赛找出数组排序后的目标下标思路首先将数组从小到大排序,然后遍历一遍找到值为target的下标即可。代码class Solution {public: vector<int> targetIndices(vector<int>& nums, int target) { sort(nums.begin(), nums.end()); vector<int> ans;原创 2021-11-28 19:01:18 · 350 阅读 · 0 评论 -
LeetCode 458. 可怜的小猪(C++)
有 buckets 桶液体,其中 正好 有一桶含有毒药,其余装的都是水。它们从外观看起来都一样。为了弄清楚哪只水桶含有毒药,你可以喂一些猪喝,通过观察猪是否会死进行判断。不幸的是,你只有 minutesToTest 分钟时间来确定哪桶液体是有毒的。喂猪的规则如下:选择若干活猪进行喂养可以允许小猪同时饮用任意数量的桶中的水,并且该过程不需要时间。小猪喝完水后,必须有 minutesToDie 分钟的冷却时间。在这段时间里,你只能观察,而不允许继续喂猪。过了 minutesToDie 分钟后,所有喝.转载 2021-11-25 15:28:23 · 237 阅读 · 0 评论 -
LeetCode第266场周赛题解
2021.11.7第266场周赛统计字符串中的元音子字符串思路暴力枚举所有连续子串,再用哈希表判断是否满足条件代码class Solution {public: int countVowelSubstrings(string s) { int n = s.size(); int ans = 0; for (int len = 5; len <= n; len ++ ) for (int l = 0; l + l原创 2021-11-07 14:51:12 · 213 阅读 · 0 评论 -
LeetCode 301. 删除无效的括号(C++)
给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。返回所有可能的结果。答案可以按 任意顺序 返回。示例 1:输入:s = “()())()”输出:["(())()","()()()"]示例 2:输入:s = “(a)())()”输出:["(a())()","(a)()()"]示例 3:输入:s = “)(”输出:[""]提示:1 <= s.length <= 25s 由小写英文字母以及括号 ‘(’ 和 ‘)’ 组成s 中至多含.转载 2021-10-27 21:45:40 · 283 阅读 · 0 评论 -
LeetCode第264场周赛题解
2021.10.24第264场周赛题解2047. 句子中的有效单词数思路先用双指针找到每个用空格隔开的连续子串接下来的目标就是判断每个子串是否是有效单词,具体看代码注释p.s.这题属实搞心态,接近做了十几分钟还有几次wa代码class Solution {public: int countValidWords(string s) { int n = s.size(); int ans = 0; for (int i = 0; i <原创 2021-10-25 20:53:13 · 163 阅读 · 0 评论 -
LeetCode638. 大礼包(C++)
在 LeetCode 商店中, 有 n 件在售的物品。每件物品都有对应的价格。然而,也有一些大礼包,每个大礼包以优惠的价格捆绑销售一组物品。给你一个整数数组 price 表示物品价格,其中 price[i] 是第 i 件物品的价格。另有一个整数数组 needs 表示购物清单,其中 needs[i] 是需要购买第 i 件物品的数量。还有一个数组 special 表示大礼包,special[i] 的长度为 n + 1 ,其中 special[i][j] 表示第 i 个大礼包中内含第 j 件物品的数量,且 .转载 2021-10-25 20:14:01 · 582 阅读 · 0 评论 -
LeetCode第63场双周赛题解
2021.10.16第63场双周赛2037. 使每位学生都有座位的最少移动次数思路排序+贪心次序相同的对应转换,最优代码class Solution {public: int minMovesToSeat(vector<int>& a, vector<int>& b) { sort(a.begin(), a.end()); sort(b.begin(), b.end()); int ans = 0;原创 2021-10-23 21:42:47 · 246 阅读 · 0 评论 -
LeetCode第262场周赛题解
2021.10.10第262场周赛2032. 至少在两个数组中出现的值思路用哈希表记录每个数出现的次数,将所有至少出现在两个数组的数返回一个数在一个数组中最多出现一次,故先去重代码class Solution {public: vector<int> twoOutOfThree(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3) {原创 2021-10-13 19:26:44 · 163 阅读 · 0 评论 -
不用乘除号实现除法(C++实现)LeetCode29. 两数相除
给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。题目来源:LeetCode29. 两数相除链接:https://leetcode-cn.com/problems/divide-two-integers思路倍增和二进制思想举例:yx=k\frac{y}{x} = kxy=k,将kkk转换为二进制如(11010)再将二进制转换为十进制,即 y=24∗x+23∗.原创 2021-10-12 23:33:03 · 684 阅读 · 0 评论 -
LeetCode第261场周赛题解
2021.10.3第259场周赛2027. 转换字符串的最少操作次数思路从前往后遍历一遍,如果当前字符为X,进行转换,转换一个改变三个字符代码class Solution {public: int minimumMoves(string s) { int ans = 0; int n = s.size(); for (int i = 0; i < n; i ++ ) { if (s[i] == 'X') {原创 2021-10-06 11:15:14 · 639 阅读 · 0 评论 -
力扣杯2021秋季编程大赛第四题 LCP 42. 玩具套圈
原题链接:LCP 42. 玩具套圈思路记toy的坐标xt, yt, 半径tring的坐标xr, yr满足条件的toy (xt - xr)^2 + (yt - yr)^2 <= (t - r)^2 && r >= t —(1)由于r <= 10对于每个toy来说 (1)式的范围较小 可以枚举xr和yr 若存在圆环 则该玩具可以被套中代码class Solution {public: int circleGame(vector<vector&.原创 2021-09-26 00:06:23 · 229 阅读 · 0 评论 -
LeetCode第259场周赛题解
2021.9.19第259场周赛2011.执行操作后的变量值思路从前往后模拟,检查每个字符串中是否含有“+”,若是则加1,否则减1代码class Solution {public: int finalValueAfterOperations(vector<string>& op) { int ans = 0; for (auto i : op) { if (i.find('+') != -1)原创 2021-09-21 23:19:40 · 217 阅读 · 0 评论 -
LeetCode11.盛最多水的容器(C++)
给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。题目来源:LeetCode11..原创 2021-06-23 00:08:30 · 194 阅读 · 0 评论 -
LeetCode第203场周赛题解
2020.8.23第203场周赛1560. 圆形赛道上经过次数最多的扇区题目描述给你一个整数 n 和一个整数数组 rounds 。有一条圆形赛道由 n 个扇区组成,扇区编号从 1 到 n 。现将在这条赛道上举办一场马拉松比赛,该马拉松全程由 m 个阶段组成。其中,第 i 个阶段将会从扇区 rounds[i - 1] 开始,到扇区 rounds[i] 结束。举例来说,第 1 阶段从 rounds[0] 开始,到 rounds[1] 结束。请你以数组形式返回经过次数最多的那几个扇区,按扇区编号 升序原创 2020-08-28 22:53:32 · 489 阅读 · 0 评论 -
LeetCode第197场周赛题解
2020.7.12第197场周赛1512. 好数对的数目题目描述给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 。返回好数对的数目。示例 1:输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始示例 2:输入:nums = [1,1,1,1]输出:6解释:数组中的每组数字都原创 2020-07-19 12:11:58 · 422 阅读 · 0 评论 -
LeetCode第30场双周赛题解
2020.7.11第30场双周赛1507. 转变日期格式题目描述给你一个字符串 date ,它的格式为 Day Month Year ,其中:Day 是集合 {“1st”, “2nd”, “3rd”, “4th”, …, “30th”, “31st”} 中的一个元素。Month 是集合 {“Jan”, “Feb”, “Mar”, “Apr”, “May”, “Jun”, “Jul”, “Aug”, “Sep”, “Oct”, “Nov”, “Dec”} 中的一个元素。Year 的范围在 [1原创 2020-07-18 12:02:03 · 532 阅读 · 0 评论 -
LeetCode第196场周赛题解
2020.7.5第196场周赛1502. 判断能否形成等差数列题意解读判断一个给定的数列能否形成一个等差数列。思路先将给定的数列排序,判断每两个相邻的数的差值是否相等即可。代码class Solution {public: bool canMakeArithmeticProgression(vector<int>& arr) { sort(arr.begin(), arr.end()); int d = arr[1] - arr[0原创 2020-07-12 18:01:53 · 266 阅读 · 0 评论