摘要: 21,斐波那契 概念 如果是dp,就同个子问题得到当前问题方程 $$F[i]=F[i-1]+F[i-2]$$ 代码 //优化版本 class Solution { public: int Fibonacci(int n) { int front=0,tail=1; for(int i = 0;i<n 阅读全文
posted @ 2022-11-10 21:59 壹剑霜寒十四州 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 14.不修改数组找出重复的数字 题 给定一个长度为 n+1 的数组nums,数组中所有的数均在 1∼n 的范围内,其中 n≥1。 请找出数组中任意一个重复的数,但不能修改输入的数组。 数据范围 1≤n≤1000 样例 给定 nums = [2, 3, 5, 4, 3, 2, 6, 7]。 返回 2 阅读全文
posted @ 2022-11-10 21:41 壹剑霜寒十四州 阅读(16) 评论(0) 推荐(0) 编辑
摘要: application模型 阅读全文
posted @ 2022-11-10 20:04 壹剑霜寒十四州 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 多重背包问题 I 概念 参考完全背包 代码 在完全背包的基础上将值设为预定 #include<iostream> #include<cmath> using namespace std; const int N = 110; int n,m; int v[N],w[N],s[N]; int dp[N 阅读全文
posted @ 2022-11-10 16:17 壹剑霜寒十四州 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 概念 在01背包的基础上,每个物品可以多次使用 代码 超时 for(int i = 1 ; i<=n ;i++) for(int j = 0 ; j<=m ;j++) { for(int k = 0 ; k*v[i]<=j ; k++) f[i][j] = max(f[i][j],f[i-1][j- 阅读全文
posted @ 2022-11-10 15:55 壹剑霜寒十四州 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 概念 01背包,就是要么装进去,或者不装入bag,使得背包的容量不超过的前提下,产生的经济最大 dp: 通过动态规划dp实现将大问题分解多个子问题 dp表示经济价值 w[i] 表示第i个物品的经济价值 v[i]表示第i个物品的体积 $$dp_{ij} = max(dp_{i-1j},dp_{i-1, 阅读全文
posted @ 2022-11-10 14:55 壹剑霜寒十四州 阅读(25) 评论(0) 推荐(0) 编辑