LeetCode周赛
文章平均质量分 86
LeetCode周赛题解记录
王劭阳
这个作者很懒,什么都没留下…
展开
-
LeetCode周赛专栏简介
最近,在LeetCode上面刷题,仿佛找到了大学里刷题时候的节奏,现在在工作,没有太多时间刷题,但是刷题过程中,AC带给我的喜悦感和成就感让我再一次沉浸其中。之前刷题,存在一个误区,总是刷“水题”,也就是只刷简单题,只刷会做的题,仿佛自己已经掌握的很好了一样,实际上是一种自我陶醉,自我欺骗吧。因此,这次刷题,一定要走出舒适区,尝试自己不会的题目,只有这样,才能学到新的算法,才会有进步,或许刷题的节奏会变慢,但是一步一步把之前不会的算法学会,这才是刷题的最终目的。平时,争取每天都要有AC,至少一道原创 2021-02-08 15:13:32 · 1217 阅读 · 1 评论 -
LeetCode第239场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-239第一题:到目标元素的最小距离遍历一遍数组,判断nums[i]==targetnums[i]==targetnums[i]==target的,求一下距离Math.abs(start−i)Math.abs(start - i)Math.abs(start−i),维护一个距离最小值,最后即为答案。class Solution { public int getMinDistance(int[]原创 2021-05-14 00:10:17 · 123 阅读 · 0 评论 -
LeetCode第238场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-238第一题:K 进制表示下的各位数字总和一道进制转换的题目,对于Java语言有两种做法:调用toString(n,k);toString(n, k);toString(n,k);函数;取余求和。class Solution { public int sumBase(int n, int k) { int sum = 0; // toString(n, k);原创 2021-05-06 23:29:37 · 236 阅读 · 0 评论 -
LeetCode2021春季编程大赛-个人赛
LeetCode2021春季编程大赛地址:https://leetcode-cn.com/contest/season/2021-spring/第一题:采购方案从N个零件里选2个,保证这两个零件花费和不超过预算,将N个零件从小到大进行排序,对于某个零件(下标为iii,花费aaa),从它右端到结尾查找,找到最大花费bbb的零件,使得a+b≤targeta+b≤targeta+b≤target,如果a≥targeta≥targeta≥target了,就不存在可能的组合了。查找的过程使用二分查找提高效率,如原创 2021-04-28 21:34:07 · 543 阅读 · 0 评论 -
LeetCode第237场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-237第一题:判断句子是否为全字母句判断一个字符串里,是否包含字母表的每个字母,遍历一遍,记录每个字母出现的次数到countcountcount数组中,遍历一遍countcountcount数组,如果有count[i]==0count[i] == 0count[i]==0,就返回false,遍历过程中,没有返回false,就返回true。class Solution { public boo原创 2021-04-19 23:40:04 · 75 阅读 · 0 评论 -
LeetCode第236场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-236第一题:数组元素积的符号题目不难,遍历一遍,每个数过一下signFunc(x),相乘即可,碰到0可以直接就返回了。class Solution { public int arraySign(int[] nums) { int result = 1; for (int i : nums) { if (i == 0) {原创 2021-04-12 13:05:44 · 90 阅读 · 0 评论 -
LeetCode第235场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-235/第一题:截断句子题目保证k的取值范围是[1, s 中单词的数目],所以,split分隔后,取前k个用空格拼接起来即可。class Solution { public String truncateSentence(String s, int k) { StringJoiner stringJoiner = new StringJoiner(" ");原创 2021-04-05 10:12:21 · 108 阅读 · 1 评论 -
LeetCode第234场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-234/第一题:字符串中不同整数的数目用a-z的字符,将原字符串进行分割,拿到一个只包含数字的字符串数组,对每个字符串,使用自定义的removeZero()函数去除前导0,放入set,最后统计set中元素的个数即可。比赛的时候wa了两发,不应该啊,没仔细看题,一次wa在前导0上,一次wa在数据范围上。import java.util.HashSet;class Solution { p原创 2021-03-29 13:40:37 · 162 阅读 · 2 评论 -
LeetCode第233场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-233/第一题:最大升序子数组和题目要求连续上升子数组的和最大,进行遍历,对比当前元素和前一个元素的大小关系。当a[i−1]<a[i]a[i-1] < a[i]a[i−1]<a[i]的时候,此时是递增的,累加a[i]到sum中,用max一直维护sum的最大值。当a[i−1]≥a[i]a[i-1] ≥ a[i]a[i−1]≥a[i]的时候,此时递增停止,那么让sum=a[i],从原创 2021-03-26 13:37:18 · 167 阅读 · 1 评论 -
LeetCode第232场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-232/第一题:仅执行一次字符串交换能否使两个字符串相等第二题:找出星型图的中心节点第三题:最大平均通过率第四题:好子数组的最大分数...原创 2021-03-15 13:28:52 · 152 阅读 · 0 评论 -
LeetCode第231场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-231/第一题:检查二进制字符串字段由于没有前导0,如果字符串里有1,那么字符串第一个一定是1,遍历的时候,先找0再找1,如果有这样的情况,就返回false。换言之,就是在字符串中找“01”子串。有“01”子串的返回false,否则返回true。自己写的有点麻烦了,贴一个简洁的代码。class Solution { public boolean checkOnesSegment(Stri原创 2021-03-11 13:46:40 · 165 阅读 · 0 评论 -
LeetCode第230场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-230/第一题:统计匹配检索规则的物品数量第一题还是比较简单的,循环进行判断即可。class Solution { public int countMatches(List<List<String>> items, String ruleKey, String ruleValue) { int count = 0; for (List&原创 2021-03-04 13:40:21 · 152 阅读 · 2 评论 -
LeetCode第229场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-229/第一题:交替合并字符串这个题目不难,就是两个字符串归并。class Solution { public String mergeAlternately(String word1, String word2) { int l1 = word1.length(), l2 = word2.length(), i = 0, j = 0; StringB原创 2021-02-24 23:39:00 · 140 阅读 · 0 评论 -
LeetCode第228场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-228/第一题:生成交替二进制字符串的最少操作数考虑两种最终情况,一个字符串,要想构造成“交替二进制”,一种是0开头,一种是1开头,和下标联系起来,即奇数下标放奇数偶数下标放偶数和奇数下标放偶数偶数下标放奇数。这是两个最终状态,遍历字符串,向两种最终状态进行改变,记录改变的次数,取两个次数的最小值即可。class Solution { public int minOperatio原创 2021-02-14 22:38:32 · 149 阅读 · 1 评论 -
LeetCode第227场周赛
周赛地址:https://leetcode-cn.com/contest/weekly-contest-227/第一题:检查数组是否经排序和轮转得到题目已经告诉了轮转的意思:A[i] == B[(i+x) % A.length],我们就要使用这个条件作为判断的依据。数据量也不大,直接循环所有的x进行判断即可,在判断过程中,如果有符合的,直接返回true,如果所有的x都跑完了还没有返回,那就是false 了。class Solution { public boolean check(原创 2021-02-08 15:14:26 · 144 阅读 · 0 评论