![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
勿忘勿失
这个作者很懒,什么都没留下…
展开
-
最长上升子序列(动态规划)
题目链接:最长上升子序列考查知识:动态规划题意描述:从给出的数列中找到它的最长上升子序列长度思路简析:dp[i]为以a[i]结尾的最长不下降子序列数两重循环遍历序列,第一重循环赋dp[i]初值为1,假设每个元素自成一个子序列第二重遍历i前的所有元素,如果满足上升序列a[j]<=a[i],且需要更新dp[j]+1>dp[i]时,我们对其更新即可。具体代码#include<bits/stdc++.h>using namespace std;const int N.原创 2022-04-08 21:55:06 · 1045 阅读 · 0 评论 -
最大连续子序列(动态规划)
题目链接:最大连续子序列考查知识:动态规划题意描述:给定K个整数的序列,求最大连续子序列最大连续子序列是所有连续子序列中元素和最大的一个思路简析:状态具体代码#include<bits/stdc++.h>using namespace std;const int N=1e4;int a[N],dp[N],b[N],c[N];//dp[i]为以a[i]结尾的最大连续子列和,b[i],c[i]分别为最大连续子序列的首尾元素下标 int main(){ int n; .原创 2022-04-08 21:26:12 · 962 阅读 · 0 评论 -
Fibonacci(动态规划)
题目链接:Fibonacci考查知识:动态规划题意描述:斐波那契数列:1、1、2、3、5、8、13、21、34以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)思路简析:动态规划会将求解子问题的解保存下来,来避免下次遇到相同子问题时的重复计算具体代码#include<bits/stdc++.h>using namespace std;const int N=1e3;int dp[N];//dp.原创 2022-04-08 20:40:46 · 764 阅读 · 0 评论