嵌套矩形问题(最长路及其字典序)有n个举行,选出尽量多的矩阵排成一排,使得除了最后一个之外,每一个矩形可以嵌套在下一个矩形内,并且打印#include #include #include #include #include #include #include #include #include #i...
分类:
其他好文 时间:
2015-03-12 18:43:06
阅读次数:
148
时间限制:3000ms|内存限制:65535KB难度: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)中。你的任务是选出尽可..
分类:
其他好文 时间:
2015-03-12 01:10:03
阅读次数:
146
上一篇我们用分治法已经将问题的复杂度降低了许多,但是,我们依旧不满足,于是,我们尝试用动态规划来做这道题。解题思路:
对于这样一个连续和的问题(个人习惯叫做最大连续和),如果我们要用动态规划来解,首先得考虑状态和状态转移方程。如果我们把题述数组看成序列,那么是不是可以用序列DP来考虑呢?
我们不妨考虑一个这样的序列:1,-3,5,-2,4
a[i]表示这个序列的第 i 个元素,dp[i]表示最...
分类:
编程语言 时间:
2015-03-11 23:27:57
阅读次数:
2083
题目:有n个绝对值不为0的数字,从中找到一个序列,正负交替,绝对值递增,求序列最大长度。
分析:dp,动态规划。因为绝对值要递增,所以先按绝对值排序。
设前k个数组成大的序列最长为f(k),则有如下地推关系:
f(k)= f(k-1) { data[k]*data[k-1] > 0,最后量元素不同时取 }
...
分类:
其他好文 时间:
2015-03-11 23:26:11
阅读次数:
294
---恢复内容开始--- 一直没有系统地学习过算法,不过算法确实是需要系统学习的。大二上学期,在导师的建议下开始学习数据结构,零零散散的一学期,有了链表、栈、队列、树、图等的概念。又看了下那几个经典的算法——贪心算法、分治算法、动态规划以及回溯算法。不过,都是知其一不知其二的一知半解。到最后,发现....
分类:
其他好文 时间:
2015-03-11 01:56:44
阅读次数:
172
动态规划0-1背包问题Ø 问题描写叙述: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问应怎样选择装入背包的物品,使得装入背包中物品的总价值最大?Ø 对于一种物品,要么装入背包,要么不装。所以对于一种物品的装入状态能够取0和1.我们设物品i的装入状态为xi,xi∈ (0....
分类:
其他好文 时间:
2015-03-10 21:03:25
阅读次数:
150
题目描述 Description
辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药...
分类:
其他好文 时间:
2015-03-10 19:23:30
阅读次数:
149
动态规划0-1背包问题Ø 问题描写叙述: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为C。问应怎样选择装入背包的物品,使得装入背包中物品的总价值最大?Ø 对于一种物品,要么装入背包,要么不装。所以对于一种物品的装入状态能够取0和1.我们设物品i的装入状态为xi,xi∈ (0....
分类:
其他好文 时间:
2015-03-10 18:58:05
阅读次数:
118
今天,是个好日子。我终于写出第一个采用动态规划方法的程序了,虽然之前听别人讲过这个例子,但现在只是记住了状态转移方程。自己动手写程序,就是不一样。Cheers!#include #include #include //本题的状态转移方程为: f[i] = max(a[i], f[i-1]+a...
分类:
其他好文 时间:
2015-03-10 18:50:28
阅读次数:
112
题意:给个时间长度n,m个工作时间段和每个时间段能完成的工作量,一次只能做一个工作并且一旦开始做就要把它做完,要求选择的两个工作时间段之间至少相差r时间(中间需要休息嘛)求选择那些工作n时间内能完成的最大工作量。输出最大值。
思路:先按工作的结束时间从小到大排序,再动态规划。dp[i]表示从头开始取到第i段所获得的最大值。二重循环,如果第i段之前的某个段的结束时间加上r小于等于第i段的开始时间,则更新dp[i]。...
分类:
其他好文 时间:
2015-03-10 14:03:56
阅读次数:
96