摸鱼学大师
摸鱼学大师
全部文章
分类
未归档(8)
题解(541)
归档
标签
去牛客网
登录
/
注册
摸鱼学大师的博客
问月月不明?
TA的专栏
547篇文章
2人订阅
孤帆远影碧空尽
547篇文章
10911人学习
全部文章
(共91篇)
题解 | #一样的水#
来自专栏
思路: 题目的主要信息: 数组a是初始时水桶里的水 数组p是每次询问后,要求水桶中水相同的水桶数量 一共是q次查询,每次需要找到使水桶中拥有相同水量的水桶数量达到p中要求的最少花费,即每次加水量最少 方法一:动态规划+前缀和具体做法:我们用(下标1开始)表示前i个数的和。对于某一次查询,我们要求...
数组
动态规划
查找
迭代
前缀和
2021-07-30
0
571
题解 | #最大子三角形#
来自专栏
思路: 题目的主要信息: 从一个六边形的01矩阵中找到全1的三角形,且要找边长最大的一个 其中六边形矩阵的数据以vector数组的形式给出因为给出的数据是一维的,现在首要的难题的是将一维数组表示的六边形矩阵装入二维矩阵。仔细观察边长为的六边形矩阵,一共是行,最长是列。因此我们建立一个这样的矩阵保存...
最大子三角形
六边形
数组
动态规划
迭代
2021-07-29
1
580
题解 | #数组求和统计#
来自专栏
思路: 题目的主要信息: 两个长度相同的数组a与b,长度都为n 统计数对出现的次数,其中: 相当于是相同的下标,a数组中的区间求和等于b数组中两端相加。 方法一:暴力法具体做法:一个慢指针遍历a数组中的每个元素,另一个快指针遍历a数组中后面的所有元素,并累加快慢指针之间的和,并每次...
数组
数学
模拟
哈希
前缀和
2021-07-29
0
533
题解 | #牛牛的消消乐#
来自专栏
思路: 题目的主要信息: 对一个数组,每次选1个元素进行操作,两次操作后使数组和最小 操作为:任选一个元素x,将数组中所有大于等于x的数减去x 方法一:暴力法具体做法:首先对数组进行排序,使之成为递增顺序。求一个数组的和sum,然后就是找到sum要减去的最大值。这个最大值就是进行两次操作的时候...
数组
数学
分段函数
2021-07-29
2
837
题解 | #信封嵌套问题#
来自专栏
思路: 题目的主要信息: vector中是每个信封的长度和宽度,当一个信封长度和宽度都大于另一个信封时,便可以嵌套 题目要求最大嵌套数量,且长宽不能颠倒 方法一:动态规划具体做法:我们可以用动态规划来解决。首先对数组进行排序,将较长的信封放在前面,使之成为一个信封长度递减的序列。维护一个辅助数组...
数组
排序
信封嵌套
二分法
动态规划
2021-07-28
0
602
题解 | #加起来和为目标值的组合#
来自专栏
思路: 题目的主要信息: 从数组num找出所有加起来等于target的组合 每个组合num中每个元素只能用1次 返回的值必须是非递减次序,组合不能重复 方法一:递归+枝剪具体做法:对于排序后的num数组中第一个元素,我们可以考虑如果它比target大,那么后续都会比target大,没有加起来等于...
回溯
递归
枝剪
哈希表
数组
2021-07-28
0
1342
题解 | #集合的所有子集#
来自专栏
思路: 题目的主要信息: 有一个没有重复元素的整数集合S,经测试S的元素本就是升序 求所有子集,子集顺序不定,子集中无重复内容,但是子集中的元素必须是升序 方法一:穷举法具体做法:学过离散数学就知道,如果集合的元素是个,那就有个子集,如果我们枚举一一构造,那就需要做一个到的映射,我们可以想到二进...
子集
集合
数组
二进制
递归
回溯
2021-07-28
0
682
题解 | #数组中只出现一次的数(其它数出现k次)#
来自专栏
思路: 题目的主要信息: 数组有n个无序数字,其中有一个数字只出现了1次,其他数字都出现了k次 需要找到只出现了一次的数字 k>1,k无特殊情况,只需要考虑空数组 方法一:排序法具体做法:首先对数字进行排序,使之呈现递增的状态,这样相同的数字必然相邻。因为其他数字至少出现大于1次,因此首尾...
数组
哈希表
位运算
排序
2021-07-28
0
905
题解 | #最小的K个数#
来自专栏
思路: 题目的主要信息: 对于一个给定无序数组,返回最小的k个元素 k和数组有特殊情况需要单独讨论,且数组最大10000 方法一:堆排序具体做法:使用Java自带的PriorityQueue模拟一个大顶堆,堆的大小限定在最大k:遍历数组,前k个元素直接入堆,后续元素如果比堆顶元素大,则弹出堆顶,...
数组
堆排序
计数法
2021-07-27
0
545
题解 | #几步可以从头跳到尾#
来自专栏
思路: 题目的主要信息: n长度的数组,每个元素表示从该数下标位置最多可往后跳跃多少个 从1开始,无0的情况 方法一:动态规划(可能会超时)题目要求的是找出从1跳到n最快的路径,即所需步数最短,我们可以想到遍历所有的路径,从中找出步数最短的路径。具体做法:我们可以用dp[i]表示第i个元素到最后...
动态规划
贪心
数组
2021-07-27
0
956
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页