• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
frankM
天下武功,唯快不破。
博客园 | 首页 | 新随笔 | 新文章 | 联系 | 订阅 订阅 | 管理

随笔分类 -  动态规划

 
LeetCode Maximum Product Subarray
摘要:链接: https://oj.leetcode.com/problems/maximum-product-subarray/求最大连续序列的乘积因为偶数个负数相乘为正数,且任何数乘0等于0.所以在计算的过程中需要维护两个数组,一个记录到当前位的最大乘积,一个记录到当前位的最小乘积..并初始化为A[i... 阅读全文
posted @ 2014-12-27 14:03 frankM 阅读(159) 评论(0) 推荐(0)
LeetCode Minimum Path Sum
摘要:链接: https://oj.leetcode.com/problems/minimum-path-sum/简单的动态规划.[i][j]表示到达位置(i,j)时的最小sumpublic class Solution{ public int minPathSum(int[][] grid) { in... 阅读全文
posted @ 2014-12-13 12:32 frankM 阅读(172) 评论(0) 推荐(0)
LeetCode Unique Binary Search Trees
摘要:链接: https://oj.leetcode.com/problems/unique-binary-search-trees/dp[i]表示当n为i时的BST数量..递推关系如下图这样,就把n=4分割为n=3,n=1,n=2.用dp数组记录结果代码:class Solution{ public: ... 阅读全文
posted @ 2014-11-30 13:14 frankM 阅读(120) 评论(0) 推荐(0)
LeetCode Maximum Subarray
摘要:链接: https://oj.leetcode.com/problems/maximum-subarray/最大连续子序列 动态规划class Solution{ public: int maxSubArray(int A[],int n) { int dp[n+1]; int ans=... 阅读全文
posted @ 2014-11-23 14:41 frankM 阅读(92) 评论(0) 推荐(0)
LeetCode Word Break
摘要:链接: https://oj.leetcode.com/problems/word-break/dp[i] 表示s[0~i] 能否分割成dict中的单词class Solution{ public: bool wordBreak(string s,unordered_set &dict) { ... 阅读全文
posted @ 2014-11-11 22:49 frankM 阅读(147) 评论(0) 推荐(0)
NYOJ 18 The Triangle
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=18从上向下遍历一遍.保存中间结果,.找出最后最大值即可#include #include #define MAX_N 105using namespace std;int dp[MAX_N][M... 阅读全文
posted @ 2014-10-02 02:23 frankM 阅读(127) 评论(0) 推荐(0)
NYOJ 613 免费馅饼
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=613dp[i ][j ] :第i秒在位置 j 的最大接到馅饼的量从接完馅饼的最终位置开始判断,不断取最大的,倒推到起点。即得到最大值#include #include #include #def... 阅读全文
posted @ 2014-09-09 18:58 frankM 阅读(108) 评论(0) 推荐(0)
HDU 3466 Proud Merchants
摘要:链接:http://acm.hdu.edu.cn/showproblem.php?pid=3466本来以为就是一个普通的01背包.. 在购买商品时,条件不单单是拥有的钱大于商品的售价P,还要大于商品的另一个属性Q 。而且Q>=P..因为动态规划的后效性,要先按Qi-Pi排序,在按01背包做注意,so... 阅读全文
posted @ 2014-07-26 15:33 frankM 阅读(133) 评论(0) 推荐(0)
NYOJ 269 VF
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=269求1~10^9间各位相加和为s的数的个数..dp[i][j]:::前i位和为j的数字的个数 #include using namespace std;int dp[11][90];void ... 阅读全文
posted @ 2014-06-10 22:32 frankM 阅读(108) 评论(0) 推荐(0)
NYOJ 456 邮票分你一半
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=456价值与重量相等的01背包..背包的容量为邮票总和的一半#include #include#include#includeusing namespace std;int dp[500005];... 阅读全文
posted @ 2014-06-08 09:09 frankM 阅读(182) 评论(0) 推荐(0)
划分数问题 DP
摘要:《挑战程序设计竞赛》2.3.3:有n个无区别的物品,将他们划分成不超过m组,求出划分方法数模M的余数称做n的m划分,dp定义如下:dp[ i ] [ j ] =j的i划分的总数;考虑n的m划分ai (a1+a2+a3+...+am ==n) ,对于每个i都有ai>0,,So..{ai-1} 也就对应... 阅读全文
posted @ 2014-06-07 17:53 frankM 阅读(521) 评论(0) 推荐(1)
NYOJ 36 最长公共子序列
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=36经典dp题:#include #includeusing namespace std;int dp[1005][1005];char a[1005];char b[1005];int main... 阅读全文
posted @ 2014-06-01 17:45 frankM 阅读(142) 评论(0) 推荐(0)
01背包 (大数据)
摘要:经典的01背包问题,如果把限制条件改为:重量#include#define INF 10000000using namespace std;int c[105],v[105];int dp[10005]; //dp[i],表示在价值i下的最小重量int main(){ ... 阅读全文
posted @ 2014-05-31 12:29 frankM 阅读(620) 评论(0) 推荐(0)
NYOJ 311 完全背包
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=311这道题是完全背包的一个变型,,:求的是把背包装满的最优解.dp方程跟经典的一样:for(i=0; idp[j]) dp[j]=dp[j-c[i]]+w[i]; ... 阅读全文
posted @ 2014-05-30 20:16 frankM 阅读(111) 评论(0) 推荐(0)
NYOJ 16 矩形嵌套
摘要:链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=16最长单调子序列......注意可以不是连续的#include //#include#include#define max( a, b ) ((a>b)?(a):(b))using namesp... 阅读全文
posted @ 2014-05-27 17:26 frankM 阅读(112) 评论(0) 推荐(0)
 

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3