- 博客(6)
- 收藏
- 关注
原创 最大总优势
最大优势题面描述给定两个长度均为n的数组 A 和 B,A 相对于 B 的优势可以用满足 Ai > Bi 的索引 i 的数量来描述。已知必然存在 A的一种排列使得数组A相对于数组B的优势最大。求出这个最大优势输入描述第一行输入一个整数n;第二行输入 n个由空格分隔的整数代表: A1,A2… Ai…An;第三行输入 n个由空格分隔的整数代表: B1,B2… Bi… Bn保证1 <= n <= 105 0 <= Ai, Bi<=109输出描述输出这个最大优势案例
2024-01-17 16:41:06
426
1
原创 01背包的一维数组优化
在上述的dp递推公式中,等于号前面的dp[j]等价于没有经过优化的01中的dp[i][j]否则,将其他部分都初始化为负无穷,这是为了在遍历中取到正确的值而不是被初始值覆盖了。dp[j]的含义为在背包容量为j的情况下前i个物品所能获得的最大收益。首先在容量为0时所获得的最大收益必然为零,所以dp[0] = 0;因为小于cost[i]的部分都是上一层i-1的,所以就不用覆盖。max函数中的dp[j]等价于dp[i-1][j]dp数组的初始化一定要和它的含义相吻合。其中dp数组的大小为背包的容量大小。
2023-08-05 15:38:52
237
1
原创 二分优化 LIS(最长递增子序列)
最长上升子序列(Longest Increasing Subsequence,LIS)是一个经典的问题,可以使用动态规划或二分查找来解决。LIS[i], LIS即为dp数组,其下标i代表着是原数组的第几个元素,LIS[i]意义为包含原数组的第[i]个元素的最长的递增子序列。每个包含自身的最长递增子序列初始长度均为1(即只包含自身)二分查找优化后 O(nlogn)先给出没有优化的代码。
2023-08-03 15:11:29
428
原创 有关 滑动窗口 尺取法 算法的一些题型
当r指到了0的时候,让l和指向r自增1后的位置,也就是说,遇见了0的时候,l一直是和r一起跑的,当第一次遇见了字符1的时候,此时的l必然等于r,两个指针所指向的都是1,这样子就可以更新答案了,随后r自增,如果下一个任然为字符1,就再次更新答案否则l再一次跟着r跑,直到遇见了下一个字符1.一样子的模板题,先将这N个人每天的安排情况合并,然后再在合并后的情况中套用上面的模板就可以了。给定一个定长的01串,有一次反转的机会,让你寻找到最长的1的序列的长度。题型1 在给定序列中找到最长的连续子序列。
2023-07-23 16:57:18
89
原创 洛谷P1824 进击的奶牛(二分答案)
此题中,要求最大值,因此有重要结论:若mid为解,则最优解一定属于[mid,right](要寻找最小间隔的最大值)二分答案时,需要有上界、下界、中点。分别命名为left,right,mid。若mid不为解,则最优解一定属于[left,mid)。二分答案这是非常清楚的一个做题思路。二分答案的模板很好写,难点主要在。,一般二分答案就是考察这个!一般都是用二分答案进行运算。
2023-04-01 11:57:18
514
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人