摘要:
基本思想: 打表、递归、dp都可以; 关键点: 无; #include<iostream> using namespace std; const int maxn = 25; int n; int dp[maxn]; int main() { while (cin >> n) { dp[1] = 1 阅读全文
posted @ 2020-04-01 19:00
暮云林凌
阅读(159)
评论(0)
推荐(0)
摘要:
基本思想: 隐藏下的最大连续数和的问题,不容易看出来,从矩阵的性质中才可能看出来。 自己最初是想用二维DP来标识0-x,0-y的矩阵,但是发现不能表示非0起点的最大矩阵和; 一些大佬的思想是通过多行合并来计算,例如1-3行合并,则是找3*n的最大子矩阵,可以通过一次最长连续和求解,这个第一次见; 关 阅读全文
posted @ 2020-04-01 18:02
暮云林凌
阅读(165)
评论(0)
推荐(0)
摘要:
基本思想: 无; 关键点: 无; #include<iostream> #include<algorithm> using namespace std; typedef long long ll; const int maxn = 1000100; ll dp[maxn]; ll d[maxn]; 阅读全文
posted @ 2020-04-01 11:21
暮云林凌
阅读(173)
评论(0)
推荐(0)
摘要:
基本思想: 只需要缕清关系即可; 对于第i个楼梯,可以得知有两种情况: 1.i-1 和 i两部跨; 2.i一步跨; 所以有: dp[i]=dp[i-1]+dp[i-2]; dp初始化的时候直接初始化dp[0],dp[1]即可; 关键点:无; #include<iostream> #include<a 阅读全文
posted @ 2020-04-01 11:14
暮云林凌
阅读(195)
评论(0)
推荐(0)
摘要:
基本思想: 最长不下降子序列的改良版; 只需要更改状态转移方程即可,dp数组内存储的是最大子序列和; dp[i] = max(dp[i], dp[j] + num[j]) 状态转移方程如上所示,且j的取值范围为0~i-1; 关键点: 无; #include<iostream> #include<st 阅读全文
posted @ 2020-04-01 10:47
暮云林凌
阅读(119)
评论(0)
推荐(0)

浙公网安备 33010602011771号