![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
limboWang
这个作者很懒,什么都没留下…
展开
-
【算法】- DP(动态规划)
AtCoder-DP专项题目地址,点这 A - Frog 1 #include <iostream> #include<cstring> #include<vector> #include<stdio.h> #include<queue> #include<math.h> #include<stack> #include<math.h> #include<algorithm> #include<原创 2021-03-10 14:15:24 · 176 阅读 · 0 评论 -
PAT甲级-1068 Find More Coins (30分)
题目:1068 Find More Coins (30分) 分析:背包问题,使用了滚动数组(刚开始看没看懂,看了好久,太菜了)。记录选择的方法在DP中比较常用。 使用二维数组存放,v的枚举是顺序还是逆序都无所谓,但是!!!如果使用一维(滚动数组)存放,必须逆序。 #include <iostream> #include<cstring> #include<vector> #include<stdio.h> #include<queue> #in.原创 2021-01-29 14:11:42 · 109 阅读 · 0 评论 -
PAT甲级-1045 Favorite Color Stripe (30分)
题目:1045 Favorite Color Stripe (30分) 分析:DP-----本题可用两种DP来解决,本题中要注意不是favorite的颜色不要加入DP,即num的计算。 1、最长不下降子序列(LIS) dp[i]=max(1,dp[j] + 1)//dp[i]表示以a[i]结尾的最长的长度 #include <iostream> #include<cstring> #include<vector> #include<stdio.h> #i.原创 2021-01-23 15:38:23 · 128 阅读 · 0 评论 -
PAT甲级-1040 Longest Symmetric String (25分)
题目:1040 Longest Symmetric String (25分) 分析:最长回文串,这里写复杂度为O(n²)的DP算法,最优的回文串算法为manacher(马拉车),这里不介绍(因为我太菜了┭┮﹏┭┮ ) 。 dp[i][j]:表示s[i]到s[j]是不是回文子串 dp[i][j] = dp[i+1][j-1] s[i] = s[j] 0 s[i] != s[j] 边界: dp[i][i] = 1 if(s[i] == s[i+1]) { dp[i][i+1.原创 2021-01-22 13:53:50 · 118 阅读 · 0 评论 -
PAT甲级-1007 Maximum Subsequence Sum (25分)
题目:1007 Maximum Subsequence Sum (25分) 分析:最大子序列的和,DP,本题要记录最大子序列和的起始元素和末尾元素 #include <iostream> #include<cstring> #include<vector> #include<stdio.h> #include<queue> #include<math.h> #include<stack> #include<algo.原创 2021-01-22 13:31:25 · 109 阅读 · 0 评论