算法
文章平均质量分 57
momo_Unique
这个作者很懒,什么都没留下…
展开
-
【动态规划】单调递增最长子序列
Description 设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。 Input 第一行:n,代表要输入的数列的个数第二行:n个数,数字之间用空格格开原创 2014-04-16 20:51:55 · 771 阅读 · 0 评论 -
【动态规划】数字三角形问题
Description给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,对于给定的由 n行数字组成的数字三角形, 计算从三角形的顶至底的路径经过的数字和的最大值。注意:对于第i层的第j个数字,其所在路径的下一个数字只能是第i+1层的第j个或第j+1个数字。 7 3 8 8 1 0 2 7原创 2014-07-08 17:36:58 · 2335 阅读 · 0 评论 -
【回溯法】旅行商问题
Description “旅行商问题”常被称为“旅行推销员问题”,是指一名推销员要拜访多个地点时,如何找到在拜访每个地点一次后再回到起点的最短路径。现在有n个城市,部分城市间有路相连。请找出从第一个城市出发,访问且只访问每个城市一次,并回到第一个城市的最短路径长度。原创 2014-07-08 20:57:07 · 6606 阅读 · 0 评论 -
【回溯法】工作分配问题
Description 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 Input原创 2014-07-08 17:42:05 · 10206 阅读 · 1 评论 -
【动态规划】租用游艇问题
Description长江游艇俱乐部在长江上设置了n个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i到游艇出租站j之间的租金为r(i,j),1 试设计一个算法,计算从游艇出租站1到游艇出租站n所需的最少租金。Input第 1 行中有 1 个正整数 n(n接下来的n-1 行是r(原创 2014-07-08 17:36:04 · 9385 阅读 · 0 评论 -
【回溯法】n皇后问题
Description 在n×n 格的棋盘上放置彼此不受攻击的n 个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。 设计一个解n 后问题的回溯算法,计算在n*n个方格上放置彼此不受攻击的n个皇后的一个放置方案原创 2014-07-08 18:32:58 · 979 阅读 · 0 评论 -
【回溯法】0-1背包问题
#includeusing namespace std;#define N 1000typedef struct back{ int value; int weight;}back;back b[N];int cw,cp,bestp,n,c;float bound(int t){ float a=cp; int i; for(i=t;i<=n;i++) a+=b原创 2014-06-03 23:07:18 · 851 阅读 · 0 评论 -
【分治法】子数组换位问题
Description 设a[0:n-1]是有n个元素的数组, k(0 Input 第一行:n k,n为a数组元素个数,k为一非负整数第二行:a[0] a[1] ... a[n-1],a数组的原创 2014-04-27 16:56:49 · 1642 阅读 · 0 评论 -
【贪心算法】会场安排问题
若想看题目,请看评论中的链接,貌似这里不能贴链接。。。说非法。。。#include#includeusing namespace std;#define N 10000typedef struct actTime{ int start; int end;}actTime;actTime t[N];bool cmp(actTime t1,actTime t2){ if(t1.原创 2014-05-16 20:46:21 · 1464 阅读 · 2 评论 -
【贪心算法】汽车加油问题
#includeusing namespace std;#define N 1000int d[N];int main(){ int n,k,i,count,left; while(cin>>n>>k) { for(i=1;i<=k+1;i++) cin>>d原创 2014-05-16 17:30:21 · 2719 阅读 · 1 评论 -
【动态规划】矩阵连乘问题
Description 给定n个矩阵{A1,A2,…,An},其中Ai与Ai+1是可乘的,i=1,2,…,n-1。要算出这n个矩阵的连乘积A1A2…An。由于矩阵乘法满足结合律,故计算矩阵的连乘积可以有许多不同的计算次序。这种计算次序可以用加括号的方式来确定。若一个矩阵连乘积的计算次序完全确定,也就是说该连乘积已完全加括号,则可以依原创 2014-04-18 13:42:33 · 1415 阅读 · 0 评论 -
【动态规划】0-1背包问题
Description 解0-1背包问题 Input 第一行是物品数量n和背包总容量C第二行是n件物品的价值第三行是n件物品的重量原创 2014-04-17 22:44:08 · 712 阅读 · 0 评论 -
【动态规划】最大k乘积问题
Description 设I是一个 n位十进制整数。如果将I划分为 k段,则可得到k个整数。这k个整数的 乘积称为I的一个 k乘积。试设计一个算法,对于给定的 I和 k,求出 I的最大 k乘积。 对于给定的I和k,计算 I的最大 k乘积。 Input原创 2014-04-16 12:36:46 · 11837 阅读 · 1 评论 -
【贪心算法】今年暑假不AC
#include#includeusing namespace std;#define N 101typedef struct TV{ int start; int end;}TV;TV list[N];bool cmp(TV a,TV b){ if(a.start<b.start) return true; else return false;}int原创 2014-06-23 11:34:17 · 948 阅读 · 1 评论