
动态规划
0000
「已注销」
这个作者很懒,什么都没留下…
展开
-
最优任务调度
#include<iostream>#include<algorithm>#define INF 65535#define MAXNUM 50using namespace std;int *A; //每个工件在A机器上运行的时间int *B; //每个工件在B机器上运行的时间int DP[MAXNUM][MAXNUM]; //DP数组int sum_a; //A机器运行时间和int Ans; //最终结果/* 初始化函数 .原创 2020-12-04 12:11:55 · 1550 阅读 · 0 评论 -
01背包【普通DP + 跳跃点解法 + 空间优化】
#include<iostream>#include<queue>#include<algorithm>#include<vector>#define MAXNUM 30using namespace std;class Bag{ public: Bag(){ val = 0; weight = 0; } public: int val; int weight; friend bool operator <.原创 2020-11-27 21:52:35 · 765 阅读 · 0 评论 -
求最长公共子序列(DP算法)
思路:s1 = <x1,x2,x3...xn>s2 = <y1,y2,y3...ym>若它们的最长公共子序列为 s3 = <g1,g2,g3...gk>则:若xn == ym:gk为xn和ym的最长公共子序列LCS的最后一个元素&&g(k-1)为xn-1和ym-1的LCS的元素此时:lcs[xn][ym] = lcs[xn-1][ym-1] + 1.(即在len(zk-1)的长度的基础上长度 + 1)若xn != ym:原创 2020-09-20 17:38:26 · 1096 阅读 · 0 评论 -
矩阵乘法最少次数【动态规划(递归/非递归)】
#include<iostream>using namespace std;int P[1001],m[1001][1001],s[1001][1001];void Initial(int &n){ cin>>n; for(int i = 0;i <= n;i++)cin>>P[i]; for(int i = 1;i <= n;i++){ m[i][i] = 0; s[i][i] = 0; }}void MatrixChai.原创 2020-11-23 20:10:04 · 480 阅读 · 0 评论