wkkw
wkkw
全部文章
分类
题解(71)
归档
标签
去牛客网
登录
/
注册
JoesRain 牛客博客
一定要成爲一名CV研究員
TA的专栏
4篇文章
0人订阅
来吧,BAT
4篇文章
639人学习
全部文章
(共71篇)
题解 | #机器人的运动范围#
这个题,我在check函数中掉了一下坑,开始没抽离check函数,忘了改变i,j的值,会导致后面的dfs出错。 总体不难,就是一个dfs跟一个check函数的就搞定了。没有复杂操作,大部分人注意下check的细节就没有问题了。 class Solution { publ...
C++
2022-02-14
0
411
题解 | #矩阵中的路径#
总是会错几个用例,调试一下。然后就OK了。尴尬。 此题重在4点: 1.需要一个record来记录每次走过的状态。 2.需要遍历路径的起始位置,位置任意。 3.dfs深度遍历路径的时候,需要设置记录一下位置,等待所有四种可选位置遍历执行完成之后,需要重置记录状态。 4.处...
C++
深度优先搜索
2022-02-13
0
456
题解 | #最长不含重复字符的子字符串#
这个很快就找到解决方案了,之前存在一个bug,导致几个用例过去不了。看了别人的解法才发现bug在哪。 解决方法: 1.用字典来存储字符的位置 2.默认起始位置为0,最大长度为0 3.遍历字符串 如果存在过该字符,说明可能需要更新起始位置。起始位...
C++
2022-02-12
6
576
题解 | #礼物的最大价值#
这个题虽然是 中等的动态规划题,确实简单。简单在于状态转移方程只有四种情况。 默认当前位置的价值为当前礼品的价值。 1.如果当前位置行列数都大于0,当前位置的价值需加上左边位置跟上边位置的最大值 2.如果当前位置只有行数大于0,当前位置的价值需加上上边位置的值 3.如果当前位...
C++
2022-02-12
0
364
题解 | #把数字翻译成字符串#
虽然不是最优的,但是是自己捣鼓出来的。 此题使用的是动态规划。 1.dp每走一步的时候,默认为0,先判断当前位置的数字是否在1到26之间,这样就可以初始跟前一个位置的个数一致。 2.如果当前数字跟前一个数字合起来在1到26之间,那么dp值在默认值的基础上可以加上前前位置的个数。(特...
C++
动态规划
2022-02-12
0
405
题解 | #买卖股票的最好时机(一)#
解题思路 1.全局贪心 默认全局差值为0 首先找到当前为止股票最低点 当前股票价值大于这个最小值,就可以更新全局差值,取最大值 int maxProfit(vector<int>& p...
C++
2022-02-10
0
320
题解 | #正则表达式匹配#
不信邪,硬是把它搞出来了。写了好几遍,调试了好几次。总是有点细节问题,遗漏几个用例。 此题重在严谨,小心每个细节处理。 字符串匹配,把点和星分情况对待。 我把问题拆分成三种情况,其中重点是第二种情况。 第二种情况又拆分成三种情况,递归去处理就好。看了大...
C++
2022-02-08
0
347
题解 | #连续子数组的最大和(二)#
这个题虽然很容易想到动态规划,有存在子结构。仔细一想这个子结构根本不需要数组来缓存,几个变量缓存就够了。 1.以当前位置结尾的累计最大值。 2.全局累计最大值 3.当前位置累计最大值的开始位置跟结束位置。 4.全局累计最大值的开始位置跟结束位置。 更新全局最大值...
C++
2022-01-16
1
333
题解 | #数字序列中某一位的数字#
虽然标记为简单,代码实现也简单,但是我觉得不能算简单把。 写了好几遍,官方解答是用n每次取减区间长度。我之前的实现是计算累计区间总长度。总是奇怪的问题,个别案例过不了。 官方的题解也有一个有意思的地方,比较的时候如果不把n强制转成long long 解答也是错误的。但是n明明是外部传入的...
C++
2022-01-16
0
447
题解 | #二维数组中的查找#
这个题的重点是把握一个单调的规律。 左下角刚好满足这样的条件,如果目标比它大肯定在它右边,比它小肯定在它上边。 这个性质是解这个题的关键。找到这个性质,这个题就非常简单了。 bool Find(int target, vector<vector<int> &...
C++
2022-01-15
0
280
首页
上一页
1
2
3
4
5
6
7
8
下一页
末页