retyrn
retyrn
全部文章
分类
题解(3)
归档
标签
去牛客网
登录
/
注册
retyrn的博客
全部文章
(共206篇)
题解 | #挤奶路径# DP
知识点DP思路状态表示 f[i][j]表示到达位置(i, j)的合法方案数由于可以从上方来, 也可以从左边来, 按照这两个来源进行更新即可时间复杂度 AC Code (c++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿...
2023-08-02
0
321
题解 | #最小体重积# 最短路 Dijkstra
知识点最短路 Dijkstra思路这道题要求可以上下左右四个方向移动,那么需要用Dijkstra算法,如果只允许向下或者向右移动,那么可以用DP解决。DP在当前的题面中是错误的。hack数据:[[1,1,1,9],[9,9,1,9],[9,1,1,9],[9,1,9,9],[9,1,1,1]]这个...
2023-08-02
1
464
题解 | #寻找两头牛的情报关联# 哈希表
知识点哈希表思路从左到右遍历,用哈希表记录下每个数出现的最左端的位置。每次找target-当前数的数是否存在,存在则更新答案。时间复杂度 AC Code(C++) #include <unordered_map> class Solution { public: /** ...
2023-08-02
0
337
题解 | #不能连续吃草的牛# 状态机DP
知识点状态机DP思路状态表示: f[i][j] 表示前i个位置且第i个位置 取/不取的状态为j的最大值状态转移: f[i][0] = max(f[i-1][0], f[i-1][1]) f[i][1] = f[i-1][0] + nums[i-1](下标从0开始)时间复杂度 AC Code (C++...
2023-08-02
0
276
题解 | #不能连续吃草的牛II# 分类讨论 DP
知识点分类讨论 DP思路环形排列,我们可以分类讨论是否取第一个房子和最后一个房子来进行分类讨论其余的部分和上一道题完全一致。时间复杂度 AC Code(C++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回...
2023-08-02
0
315
题解 | #递减种子序列# 最长上升子序列 LIS
知识点LIS思路最长上升子序列板子题最长上升子序列,可以用DP解决,时间复杂度为这里用贪心+二分的思路 时间复杂度为AC Code (C++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
2023-08-02
0
294
题解 | #奶牛快乐数# 快慢指针
知识点快慢指针思路准备一个快指针一个慢指针,快指针每次走两次,慢指针每次走一次,如果快指针先到达1,说明是快乐的。如果存在环的话,那么走的足够多的时候快慢指针相等。AC Code(C++) class Solution { public: /** * 代码中的类名、方法名、参数名已...
2023-08-01
0
271
题解 | #牛群的数量计算# 位运算
知识点位运算思路要求实现无加减乘除运算的乘法; 我们可以将一个乘数按位拆解,这样就可以用位运算得到1,2,4,8..倍的数值之后我们实现无需加减乘除的加法即可AC Code(C++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定...
2023-08-01
0
318
题解 | #牛群的编码反转# 位运算
知识点位运算思路枚举二进制的每一位,如果为1就在结果加上翻转对应的那个数即可。时间复杂度 AC Code(C++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * ...
2023-08-01
0
293
题解 | #牛群的编码统计# 位运算
知识点位运算思路枚举二进制的每一位,记录为0的即可。实际上内置函数的实现更加优秀。时间复杂度AC Code(C++) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * ...
2023-08-01
0
297
首页
上一页
3
4
5
6
7
8
9
10
11
12
下一页
末页