
PAT甲级 DP问题
PAT甲级中的动态规划问题
爱吃梦龙雪糕
这个作者很懒,什么都没留下…
展开
-
1045 Favorite Color Stripe (30 分) (LCS做法)
同一道题的不同做法 坑点如下 1,本题中的最长公共子列允许有重复,模板如下 for(int i=1;i<=m;i++) { for(int j=1;j<=l;j++) {int MAX=max(dp[i-1][j],dp[i][j-1]); if(A[i]==B[j]){ dp[i][j]=MAX+1;} else { dp[i][j]=MAX;原创 2021-07-28 16:57:46 · 78 阅读 · 0 评论 -
1007 Maximum Subsequence Sum (25 分)
dp问题中的最大连续子序列和,本题要求记录最大序列和的首尾元素。 坑点如下 1,dp的方法 const int maxk=10010; int d[maxk];//存储输入元素 int dp[maxk];//存储i结尾的最大子序列和 2,首尾元素的计算方法 创建首元素数组,记录对应元素。 if(d[i]>dp[i-1]+d[i]){ s[i]=i;//首元素为当前元素 } else { s[i]=s[i-1];/原创 2021-08-15 11:03:06 · 66 阅读 · 0 评论 -
1040 Longest Symmetric String (25 分)
最长回文字符串长度统计 坑点如下 1,getline函数的使用 #include<iostream> getline(cin,str); 代码如下 #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<iostream> using namespace std; const int maxn=1010; string str; i原创 2021-08-15 12:27:55 · 61 阅读 · 0 评论