acmDP
文章平均质量分 63
ytu刘政
这个作者很懒,什么都没留下…
展开
-
dp之最长公共子序列算法
*最长公共子序列算法LCM O(n * m)*功能: 求解两个字符串的最长公共子序列。*函数: lcm(char *src1, char *src2)*参数: src1 //第一个字符串* src2 //第二个字符串*返回值:* dp[len1][len2] //两个字转载 2013-05-17 19:31:25 · 501 阅读 · 0 评论 -
dp之数塔问题
数塔问题:#include #include using namespace std;const int N =1001;int data[N][N],dp[N][N];//dp保存的是存储各阶段的决策结果,即以dp【i】[j]为终点的路径的最大的和,d[0][0]存储的就是问题的最大值void printLJ(int n)//n:data数组的第一维的大小{原创 2013-05-18 08:41:48 · 431 阅读 · 0 评论 -
dp之二维的最大字段和算法
二维的最大字段和算法:#include #include using namespace std;#define MIN -1000000;#define MAXSIZE 1001//注意边界条件,根据具体问题,更改MAXSIZEint num[MAXSIZE][ MAXSIZE];struct Point{ intx,y;}start,end;i原创 2013-05-20 17:54:42 · 417 阅读 · 0 评论 -
dp之一维的最大字段和算法
/*********************************************************************一维的最大字段和算法 O(n)*功能: 求解给定数组的最大字段和,并求出最大子段的起始位置和结束位置。*函数: intmaxsum(int *num, int len, int &s, int &e)*参数: num[] //原始数据从转载 2013-05-17 19:33:04 · 591 阅读 · 1 评论 -
dp之最长有序子序列
最长有序子序列:注意:最长不减子序列的个数 = = 最长递减子序列的长度 最长不增子序列的个数 = = 最长递增子序列的长度 最长递增子序列的个数 = = 最长不增子序列的长度 最长递减子序列的个数 = = 最长不减子序列的长度//复杂度O(N^2) #include #include using na原创 2013-05-17 19:26:54 · 601 阅读 · 0 评论 -
DP之最长递增序列(利用二分查找,复杂度为nlgn)
注意:最长不减子序列的个数 = = 最长递减子序列的长度 最长不增子序列的个数 = = 最长递增子序列的长度 最长递增子序列的个数 = = 最长不增子序列的长度 最长递减子序列的个数 = = 最长不减子序列的长度#include using namespace std;#define N 1001int data[N],f原创 2013-05-27 16:40:04 · 568 阅读 · 0 评论