![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
medium标签
文章平均质量分 78
LeetCode medium标签的题,可能很简单,可能稍微复杂一点
sluqy671
人生如梦, 且行且失;及时行乐,岂不快哉?
展开
-
LeetCode1696 Jump Game VI
题意:给出一个大小为n的序列,以标号0作为起点开始跳,每次最多向右移动k个位置,求到达序列最右端时所经过所有点的权值之和最大为多少。 首先上经典dp,O(n*k)fu'z原创 2021-06-10 11:48:19 · 156 阅读 · 0 评论 -
LeetCode 16 3Sum Closest 可用三分法
题意:3Sum题变种,给出n个数nums[]和一个target,求n中的3个数的组合使得其和与target相差值最小。 思路:传统的3Sum做法(LeetCode15),枚举三个数中的两个,然后求证剩余的数字是否在给出的集合中。后面一步可以时间换空间,用二分来做,这样复杂度乘上一个logn;也可以空间换时间,用数组直接存储或者hash挂链。 对于这一题,可以继续用传统的解法,先枚举三个数中的两个,但注意到目标答案的变化并不是单调的,即取出两个数nums[i]和nums[j]后,最优解的计算过程为ans=原创 2020-12-31 13:22:18 · 129 阅读 · 0 评论 -
LeetCode 1457 Pseudo-Palindromic Paths in a Binary Tree
简单题,可以训练一下优化思想。 题意:给出一个二叉树,每个节点的值在1-9之间,若一条从根节点到叶节点的路径(path)包含的值可以在排列变换后形成回文串,则我们称这条路径是Pseudo-Palindromic Path。 求PPP的数量。 数据范围:1≤n≤1e5 很自然的想到自根向下的dfs维护每种数值的数量,只要做到这点已经能ac了。 最裸的dfs的话,时空复杂度均为O(n),因为dfs过程中保存了9种value的状态。可以使用01进行优化,即使用数组来记录每个value的状态stat,每次原创 2020-12-30 11:15:25 · 98 阅读 · 0 评论 -
LeetCode 754 Reach a Number
题意:出发点位于数轴上的原点,对于第n步,可选择向左或是向右移动n个单位,求到达target的最小步数。 思考: 最开始没有什么想法,由于数据区间直接覆盖整个int类型,bfs什么的肯定不可能; 尝试贪心,但是没有任何数学依据。易证target具有对称性,因此不考虑起手往反方向跳的情况(贪心的想法),一直向右直到接近target; 因为第k步与第k+1步相差1,可以认为对于一段长度为1的路径,有cost(1)=2; 那么如果现在距离target为d,答案是否就是2*d呢? 很容易想到反例,不原创 2020-12-29 15:57:06 · 81 阅读 · 0 评论 -
LeetCode 12 新的开始
OI生涯早就结束了,ACM也是个虎头蛇尾,现如今还在读研,学习生活没什么问题,眼下就是找工作这一点了。 再次开始写博客的契机是csdn给我发的邮件,让我惊讶的是居然还有人在看自己年轻时写过的东西,甚至还有提问。这里不得不对各位可能是初学者或是OI大神或是事业有成的工作者等等,说一声抱歉,因为我自己也看不懂而且不记得了= =。 对于找工作,还是决定早做准备,抽空慢慢做题。CF是打不动了,但LeetCode的水平还是蛮低的,可以放心食用,这里就一步一步慢慢刷吧。写点东西,也是学习的一个过程。 我也知道网上原创 2020-12-29 14:07:39 · 104 阅读 · 1 评论