LeetCode--179场周赛题解】的更多相关文章

A题链接 给你一个目标数组 target 和一个整数 n.每次迭代,需要从 list = {1,2,3..., n} 中依序读取一个数字. 请使用下述操作来构建目标数组 target : Push:从 list 中读取一个新元素, 并将其推入数组中. Pop:删除数组中的最后一个元素. 如果目标数组构建完成,就停止读取更多元素. 题目数据保证目标数组严格递增,并且只包含 1 到 n 之间的数字. 请返回构建目标数组所用的操作序列. 题目数据保证答案是唯一的. 示例 1 输入:target = […
水题: class Solution { public: string generateTheString(int n) { string s; string a="a",b="b"; ==){ ; i <= n - ; i++) s = s + a; s = s + b; } else{ ; i <= n ; i++) s = s + a; } return s; } }; 难题:1377. T 秒后青蛙的位置 思路:自底向上反推,从结果入手寻找答案…
计算abc 首先 \(0<=a<=b<=c\) 会随机给出 \(a+b,a+c,b+c,a+b+c\)的值 因为\(a,b,c\)都为正整数,所以\(a+b+c\)一定为最大值 然后用\(a+b+c\)逐个减去即可(注意\(a,b,c\)大小 code #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int x[5]; int main(){ fo…
LeetCode 第 165 场周赛 5275. 找出井字棋的获胜者 5276. 不浪费原料的汉堡制作方案 5277. 统计全为 1 的正方形子矩阵 5278. 分割回文串 III C 暴力做的,只能说数据不充分 找出井字棋的获胜者4 题目描述 Description A 和 B 在一个 3 x 3 的网格上玩井字棋. 井字棋游戏的规则如下: 玩家轮流将棋子放在空方格 (" ") 上. 第一个玩家 A 总是用 "X" 作为棋子,而第二个玩家 B 总是用 "…
Leetcode第 217 场周赛 比赛链接:点这里 做完前两题我就知道今天的竞赛我已经结束了 这场比赛思维量还是比较大的. 1673. 找出最具竞争力的子序列 题目 给你一个整数数组 nums 和一个正整数 k ,返回长度为 k 且最具 竞争力 的 nums 子序列. 数组的子序列是从数组中删除一些元素(可能不删除元素)得到的序列. 在子序列 a 和子序列 b 第一个不相同的位置上,如果 a 中的数字小于 b 中对应的数字,那么我们称子序列 a 比子序列 b(相同长度下)更具 竞争力 . 例如…
突然很想刷刷题,LeetCode是一个不错的选择,忽略了输入输出,更好的突出了算法,省去了不少时间. dalao们发现了任何错误,或是代码无法通过,或是有更好的解法,或是有任何疑问和建议的话,可以在对应的随笔下面评论区留言,我会及时处理,在此谢过了. 过程或许会很漫长,也很痛苦,慢慢来吧. 编号 题名 过题率 难度 1 Two Sum 0.376 Easy 2 Add Two Numbers 0.285 Medium 3 Longest Substring Without Repeating C…
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - Leetcode 10. 正则表达式匹配 - 题解 LeetCode 10. Regular Expression Matching 在线提交 分析 克莱尼星号(算子) 定义及标记法 例子 推广 方法1:递归 方法2:动态规划 在线提交 https://leetcode.com/problems/re…
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - Leetcode 306. 累加数 - 题解 306.Additive Number 在线提交: https://leetcode-cn.com/problems/additive-number/ 累加数是一个字符串,组成它的数字可以形成累加序列. 一个有效的累加序列必须至少包含 3 个数.除了最开始…
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. Leetcode 372. 超级次方 - 题解 372.Super Pow 在线提交: https://leetcode.com/problems/super-pow/ 题目描述 你的任务是计算 ab" role="presentation">abab 对 1337 取模,a 是一个正整…
版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - Leetcode 202. 快乐数 - 题解 Leetcode 202.Happy Number 在线提交: https://leetcode-cn.com/problems/happy-number/ 或 LintCode 488 https://www.lintcode.com/problem/h…
LeetCode-第 166 场周赛 1281.subtract-the-product-and-sum-of-digits-of-an-integer 1282.group-the-people-given-the-group-size-they-belong-to 1283.find-the-smallest-divisor-given-a-threshold 1284.minimum-number-of-flips-to-convert-binary-matrix-to-zero-matr…
LeetCode--第180场周赛 1380. 矩阵中的幸运数 class Solution { public: vector<int> luckyNumbers (vector<vector<int>>& matrix) { vector<int> ans; int m = matrix.size(); int n = matrix[0].size(); for (int i = 0; i < m; i++) { for (int j = 0…
第一题 用一个新数组newSalary保存去掉最低和最高工资的工资列表,然后遍历newSalary,计算总和,除以元素个数,就得到了平均值. class Solution { public: double average(vector<int>& salary) { sort(salary.begin(), salary.end()); vector<int> newSalary; for(int i = 1; i < salary.size() - 1; ++i)…
今天参加了leetcode的周赛,算法比赛,要求速度比较快.有思路就立马启动,不会纠结是否有更好的方法或代码可读性.只要在算法复杂度数量级内,基本上是怎么实现快速就怎么来了. 比赛时先看的第二题,一看题就有了思路,直接用的广度优先搜索,写完提交正确.再一看有人都做了3道题了,应该是职业选手了,要多像他们看齐. 之后看第一题,发现直接用贪心就能做,写了个双重循环,一次过掉. 第三题求最优连续子数组和,想到是动态规划.然后在处理代码细节上花了很长时间,中间提交还错了一次,在十一点半左右提交通过. 再…
今天的比赛的题目相对来说比较「直白」,不像前几周都是一些特定的算法,如果你没学过不可能想出来. 做了这些周,对leetcode比赛的题目也发现了一些「规律」. 一般前两道题都很「简单」,只要有想法,直接敲代码就能解出来.更多考察的是结果是否正确,速度其次. 后两道题有些难度 ,不同场次难度不一样,也可能和不同人的水平感受不同.但是肯定比前两道要难. 一般在做后两道题的时候,只要复杂度是对的,一些细节也不用考虑太多.例如数组开的空间大小,一些线性的提前剪枝判断,写不写都可以过.最主要的是复杂度是同…
这是我第一次写周赛的题目,而且还是虚拟的.从这次起,以后就将所有错过的题目都写到博客来.当然既然是我错的,那代码肯定不是我自己的.我会注明来源.并且我会自己敲一遍.多总结总是没坏处的. 另外比较糟糕的是我错过了PAT的报名时间(截止到8/30 12:00),所以暂时我就不刷PAT的题目,专注于LeetCode的题目. 下面进入正题 1169. 查询无效交易 这题真滴不难,但是我当时想的非常复杂,我以为不会这么简单的就那么两个条件判断...谁曾想,真滴就是这样... 参考:uwi 这位大神的. 思…
这算是我第一次正式参加 LeetCode 的周赛吧.通过两道题.意料之中(通过上次模拟可以看出来).总的来说,脑袋还是不太灵光.想的有点慢.全球第一名 0:10:19 就全部通过...感觉我的智商被狠狠的摁在地上摩擦了. 参考:huntersjm 5175. 构建回文串检测 我第一次提交的直接 TLE.然后就没有然后了. TLE 代码的思路(可以不看): 定义一个 int 型的 notParesNum 保存字母个数为奇数的字母的数量. 每次检测,将 [left, right] 字串取出,统计里面…
周日的比赛的时候正在外面办事,没有参加.赛后看了下题目,几道题除了表面要考的内容,还是有些能发散扩展的地方. 做题目不是最终目的,通过做题发现知识盲区,去研究学习,才能不断提高. 理论和实际是有关系的,一些题目也都有现实意义.计算机的一些模拟操作,通过数学算法,能够大大减轻代码量和算法复杂度. 第一题是机器人在坐标系上直走和转弯,通过简单的模拟就能实现.但是仔细思考发现还能通过线性代数,坐标变换的方式做,这样在实际中计算更快.甚至还可以用复数来做. 实际扫地机器人可能就用到了类似的算法.让他能够…
本次题目因为比较简单,除了个别题目,其余题目我只写一个思路不再贴代码. 先是Div.2的题解 A题奇怪的优化,把递归函数改成2*fun(...)即可,其实看懂程序也不难,就是求a*2b: B题你会string吗,直接String变量比较大小即可 C题数数,没有卡正常方法,可以直接把数转成二进制找1个数,此时复杂度为O(logN),更快的方法是使用__builtin_popcount函数,复杂度为O(m(m为数二进制中1的个数)): D,E题,看Div.1中本题解释 所有代码都可以10行内写出,所…
很高兴给大家出题,本次难度低于上一场,新生的六个题都可以直接裸递归式或者裸递推式解决,对于老生的汉诺塔3,需要找出一般式,后两题分别为裸ST算法(或线段树)/线性DP. 正确的难度顺序为 种花 角谷定律 猴子和椰子 汉诺塔1 汉诺塔2 整数划分 跳台阶 汉诺塔3 夏目友人帐(一) 夏目友人帐(二) 一.种花 本题很容易能推出递推式或者一般式,对于第一快地,有3种种植方法,对于后面的每一快地有不同于前一块地的两种种植方法. a1 = 3: an = 2*(an-1): 代码: #include <…
这周比赛的题目很有特点.几道题都需要找到一定的技巧才能巧妙解决,和以往靠数据结构的题目不太一样. 就是如果懂原理,代码会很简单,如果暴力做,也能做出来,但是十分容易出错. 第四题还挺难想的,想了好久才想明白.这次先讲第四题,然后再讲其他的题目. 下面是详细的题解和思考. 比赛的地址 Weekly Contest 135 https://leetcode-cn.com/contest/weekly-contest-135 移动石子直到连续 II 题目:移动石子直到连续 II(Moving Ston…
一.拼写单词(LeetCode-1160) 1.1 题目描述 1.2 解题思路 由于给定的chars,每个字母只能用一次,所以用大小为26的数组charsArray来表示a-z(例如charsArray[0]代表字符a可以使用的次数,charsArray[25]代表字符z可以使用的次数),存放某字符的可使用的个数. 遍历单词列表,复制一份charsArray,使用一次,就将单词可使用次数减1. 若需要用到的字符时,该在charsArray的数量为0,则该单词不符合条件. 1.3 实现代码 cla…
5452. 判断能否形成等差数列   给你一个数字数组 arr . 如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 . 如果可以重新排列数组形成等差数列,请返回 true :否则,返回 false . 示例 1: 输入:arr = [3,5,1] 输出:true 解释:对数组重新排序得到 [1,3,5] 或者 [5,3,1] ,任意相邻两项的差分别为 2 或 -2 ,可以形成等差数列. 示例 2: 输入:arr = [1,2,4] 输出:false 解释:无法通过…
比赛链接 最近不怎么打比赛,不能马上反应过来考察的是什么,全部忘光光了... 6192. 公因子的数目 题意: 给定 \(a\) 和 \(b\),问两者的公因子数量 数据范围:\(1\leq a,b\leq 1000\) 题解: 从 \(1\) 到 \(\min(a,b)\) 暴力枚举判断即可 答案为:\(\sum\limits_{i=1}^{min(a,b)} [a\%i==0\ and\ b\%i==0]\) 时间复杂度:\(O(min(a,b))\) 代码: class Solution…
估计要刷很久才能突破三道题了.还是刷的太少.尽管对了前两题,但是我觉得写的不怎么样.还是将所有题目都写一下吧. 5189. "气球" 的最大数量 题目比较简单.就是找出一个字符串中,balloon 中每个字母出现的次数,次数最小的就是结果.注意,l 和 o 要除以 2. 定义一个数组统计每个字母的个数. int[] count = new int[26];// 统计每个字母的个数 时间复杂度:只有一个循环,故为 O(n)O(n)O(n). 空间复杂度:只有一个一维数组大小恒为 26,故…
一. 缀点成线(LeetCode-5230) 1.1 题目描述 1.2 解题思路 比较简单的一题,利用公式 y = kx + b,确定好k和b就好,并且要考虑一种情况,函数 x = h. 1.3 解题代码 public boolean checkStraightLine(int[][] coordinates) { int k = Integer.MIN_VALUE; int x1 = coordinates[0][0]; int y1 = coordinates[0][1]; int x2 =…
一.最小绝对差(LeetCode-5189) 1.1 题目描述 1.2 解题思路 数组排好序,获取最小的差值即可. 1.3 解题代码 public class Solution { class Test { public List<Integer> list; public Integer num; } public List<List<Integer>> minimumAbsDifference(int[] arr) { int len = arr.length; L…
一."气球" 的最大数量(LeetCode-5189) 1.1 题目描述 1.2 解题思路 统计各个字母的出现的次数,然后根据"木桶最短板"返回就好. 1.3 解题代码 public class Solution { public int maxNumberOfBalloons(String text) { int[] arr = new int[5]; char[] charArray = text.toCharArray(); for(char ch:charA…
一.公交站间的距离(LeetCode-5181) 1.1 题目描述 1.2 解题思路 比较简单的一题,顺时针.逆时针两次遍历,就能解决. 1.3 解题代码 class Solution { public int distanceBetweenBusStops(int[] distance, int start, int destination) { int res = 0; int len = distance.length; int i = start; do { res += distanc…
一.质数排列(LeetCode-1175) 1.1 题目描述 1.2 解题思路 先统计出1-n中有多少个质数,得到质数个数\(x\),剩下的数\(y = n - x\): 使用排列组合公式得出结果 \(A_x^x A_y^y\) 1.3 解题代码 private static final long INF = 1000000007; public int numPrimeArrangements(int n) { int count = countPrime(n); //剩余位数 int oth…