牛客360477555号_jx
牛客360477555号_jx
全部文章
分类
题解(3)
归档
标签
去牛客网
登录
/
注册
牛客360477555号_jx的博客
全部文章
(共9篇)
题解 | 城市群数量
解法:dfs / bfs 这道题就是一个简单的 floodfill 算法,其实就是统计联通块的数量。通过dfs或bfs遍历即可。需要注意的的是这道题它需要遍历的是一个图,而不是矩阵!!!代码实现如下所示(dfs和bfs都写了): class Solution { public: /** ...
2026-05-14
0
8
题解 | 最长回文子序列
解法:区间dp问题(动态规划)解决思路: 1. 状态表示 dp[ i ][ j ] :表示字符串在区间 [ i , j ] 中,最长回文子序列的长度 2. 状态转移方程如果 i > j ,则区间 [ ...
2026-05-13
0
9
题解 | 字符串问题
解法:暴力解法+滑动窗口解法思路:因为A的长度小于等于B的长度,所以我们的解决思路就是:在b字符串中固定一个和 a 长度一样的区间 [ l , r ] ,让它每次向后移动一步先后移动。每次移动,就枚举一下 b 的 [ l , r ] 区间,和 a 的 [ 0 , a.size() - 1 ] ...
2026-05-13
0
8
题解 | 重排字符串
解法:贪心1.首先我们可以优先处理一批相同的字符。2.优先处理的字符必须是出现次数最多多的字符。处理时,每隔一个格子就摆放一个该字符 因为出现次数最多的字符决定了我们这个字符串是否能重排: 假设字符串的长度是n,出现次数最多的字符的个数是x,则:如果n是偶数,当 x &...
2026-04-27
0
32
题解 | #mari和shiny#
涉及算法:动态规划(dp) 这是一个多状态的线性dp问题。 解题分析: 字符串的长度是n,找到我们最后一个字符‘y’,假设它的下标是 i ,那么我们最终等结果就是 [0,i] 区间中的 "shy" 字符串的个数。 &...
C++
动态规划
2026-04-18
1
26
题解 | 买卖股票的最好时机(二)
解法:贪心贪心策略:拿到所有股票价格呈现上升趋势的差。如图所示:我们要想赚钱,且保证可以多次买卖该只股票,但是再次购买前必须卖出之前的股票。我们就可以在所有股票价格上升时就买入,在上升到峰值时就卖出。如图所示:代码实现就是:从第二天开始遍历所有天数,如果比前一天价格高,就加入到最终结果。 #incl...
2026-04-17
1
27
题解 | 游游的水果大礼包
解法:枚举(注意:这道题贪心是错的)枚举解法分析 因为我们要求的是最终能组成的最大的价值总和,如果我们假设最终的答案有x和一号礼包,y个二号礼包,那么最终的答案其实就是求 x*a + y*b 的最大值。 直接使用数学方法求不出来x和y的取值。那么我们就可以枚举一下x和y。...
2026-04-17
1
36
题解 | #dd爱框框#
涉及算法:滑动窗口(同向双指针) 解决思路: 定义两个指针 left = 0, right = 0; right向后遍历数组 进窗口:sum += arr[right] 判断:如果 sum >= x,就重复以下操作: &n...
双指针
滑动窗口
2026-04-03
1
42
题解 | #除2!#
涉及算法:模拟+贪心+堆 思路: 将所有偶数都放进一个大堆heap中 每次除2时,取出堆顶(最大的偶数)元素top进行除2操作。判断操作后的top是否为偶数,如果是,则将它插入到堆heap中;如果不是,则将最终结果加上该奇数。重复次操作,直到堆为空或执行完...
C++
贪心
模拟
堆(优先队列)
2026-04-03
1
47