动态规划
文章平均质量分 51
天涯__
我不是归人,是个过客。
展开
-
深度优先搜索+动态规划——01背包类似问题
描述 今天是阴历七月初五,acm队员zb的生日。zb正在和C小加、never在武汉集训。他想给这两位兄弟买点什么庆祝生日,经过调查,zb发现C小加和never都很喜欢吃西瓜,而且一吃就是一堆的那种,zb立刻下定决心买了一堆西瓜。当他准备把西瓜送给C小加和never的时候,遇到了一个难题,never和C小加不在一块住,只能把西瓜分成两堆给他们,为了对每个人都公平,他想让两堆的重量之差最小。每个西原创 2016-07-19 16:41:05 · 2427 阅读 · 0 评论 -
动态规划——矩形嵌套问题
矩形嵌套 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都原创 2016-10-11 10:06:48 · 2174 阅读 · 0 评论 -
动态规划——求最长下降/上升子序列
应该算是比较经典的一道题目了。无论是按字母顺序或者按数字顺序,解题的思路都应该是一样的。用动态规划,划分为子问题,就是每个元素当前位置之前的最长子序列加上它自身这个值,就是当前的最长子序列长度。总结一下,算法核心思想就是要找到当前位置元素之前的每个元素对应的最长下降/上升子序列的最大值,然后将它加一,就等于当前位置的子序列长度值了。其复杂度为$latex O(n^{2})$.详见下代码。原创 2016-10-10 22:19:29 · 1721 阅读 · 0 评论 -
动态规划——某团题目 选红包
题目: 圆桌上放了一圈红包形成环形,每个红包金额不同,围绕圆桌走一圈选择若干红包,规则是不能拿相邻的红包,请问拿到红包最多的总金额是多少? 输入: 红包个数N N行数组表示N个红包 输出: 最多的总金额 样例输入: 2 1,2 1,3,4 样例输出: 2 4在另外一篇博客中, 我们用深度优先搜索暴力破解了这个题目,但并不是最优原创 2016-09-28 20:17:53 · 729 阅读 · 0 评论 -
动态规划——寻找子矩阵最大和
最大和 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 给定一个由整数组成二维矩阵(r*c),现在需要找出它的一个子矩阵,使得这个子矩阵内的所有元素之和最大,并把这个子矩阵称为最大子矩阵。 例子: 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 其最大子矩阵为: 9 2 -4 1原创 2016-10-14 22:07:03 · 3663 阅读 · 1 评论 -
动态规划经典——最长公共子序列
最长公共子序列 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 咱们就不拐弯抹角了,如题,需要你做的就是写一个程序,得出最长公共子序列。 tip:最长公共子序列也称作最长公共子串(不要求连续),英文缩写为LCS(Longest Common Subsequence)。其定义是,一个序列 S ,如果分别是两个或多个已知序列的子序列,且是所有符原创 2016-10-04 11:23:15 · 1495 阅读 · 0 评论 -
双层动态规划_吃土豆问题
查看原文:http://www.wyblog.cn/2016/11/29/%e5%8f%8c%e5%b1%82%e5%8a%a8%e6%80%81%e8%a7%84%e5%88%92_%e5%90%83%e5%9c%9f%e8%b1%86%e9%97%ae%e9%a2%98/ 吃土豆 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 Bean-eat原创 2016-11-29 10:37:33 · 760 阅读 · 0 评论