
程序设计基础Ⅱ-实验六-动态规划
救救孩子√
知识需要积累,智慧需要沉淀,期待下次再见。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
7-10 小鑫去爬山 (20 分)
题目描述: 马上就要放假了,小鑫打算去爬山。 小鑫要去爬的这座山有n个海拔区间。为了清楚描述我们可以从上到下标号1到n。 第i个区间有i个落脚点,每一个落脚点都有一个危险值。 小鑫需要在第n个海拔区间挑选一个点向上爬,爬到第1个海拔区间(也就是山顶)。他必须规划一条路径,让危险值之和最小。这样才安全的。 并不是任意两个落脚点之间都可以相互到达。我们这样定义对于第i个(i<n)区间的第j个落脚点,只有第i+1个区间的第j个和第j+1个可以到达。 你能帮助他找到最安全的路么? 输入格式: 输入数据为翻译 2022-04-12 20:33:05 · 896 阅读 · 0 评论 -
7-9 递归的函数 (15 分)
题目描述: 给定一个函数 f(a, b, c): 如果 a ≤ 0 或 b ≤ 0 或 c ≤ 0 返回值为 1; 如果 a > 20 或 b > 20 或 c > 20 返回值为 f(20, 20, 20); 如果 a < b 并且 b < c 返回 f(a, b, c−1) + f(a, b−1, c−1) − f(a, b−1, c); 其它情况返回 f(a−1, b, c) + f(a−1, b−1, c) + f(a−1, b, c−1) − f(a-1, b-1,翻译 2022-04-12 20:31:06 · 604 阅读 · 0 评论 -
7-8 上升子序列 (20 分)
题目描述: 一个只包含非负整数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列{a1, a2, ...,aN},我们可以得到一些上升的子序列{ai1, ai2, ..., aiK},这里1 ≤ i1 < i2 <...< iK ≤ N。例如:对于序列{1, 7, 3, 5, 9, 4, 8},有它的一些上升子序列,如{1, 7}, {3, 4, 8}等等。这些子序列中序列和最大的是子序列{1, 3, 5, 9},它的所原创 2022-04-12 20:26:02 · 882 阅读 · 0 评论 -
7-7 最长公共子序列问题 (20 分)
题目描述: 给定两个序列 X={x1,x2,…,xm} 和 Y={y1,y2,…,yn},找出X和Y的最长公共子序列。 输入格式: 输入数据有多组,每组有两行 ,每行为一个长度不超过500的字符串(输入全是大写英文字母(A,Z)),表示序列X和Y。 输出格式: 每组输出一行,表示所求得的最长公共子序列的长度,若不存在公共子序列,则输出0。 输入样例: ABCBDAB BDCABA 输出样例: 4 参考代码: #include<stdio.h> #include<原创 2022-04-12 20:23:19 · 749 阅读 · 0 评论 -
7-6 数字三角形问题 (20 分)
题目描述: 给定一个由n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。 对于给定的由n行数字组成的数字三角形,计算从三角形的顶至底的路径经过的数字和的最大值。 输入格式: 输入数据的第1行是数字三角形的行数n,1≤n≤100。接下来n行是数字三角形各行中的数字。所有数字在0..99之间。 输出格式: 输出数据只有一个整数,表示计算出的最大值。 输入样例: 在这里给出一组输入。例如: 5 7 3 8 8 1 0 2 7原创 2022-04-12 20:22:20 · 1463 阅读 · 0 评论 -
7-5 免费馅饼 (20 分)
题目描述: 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手敏捷的高手,但在现实中运动神经特别迟钝,每秒种只有在移动不超过一米的范围内接住坠落的馅饼。现在给这条小径如图标上坐标: 为了使问题原创 2022-04-12 20:19:58 · 597 阅读 · 0 评论 -
7-4 取数字问题 (20 分)
题目描述: 给定M×N的矩阵,其中的每个元素都是-10到10之间的整数。你的任务是从左上角(1,1)走到右下角(M,N),每一步只能够向右或者向下,并且不能够走出矩阵的范围。你所经过的方格里面的数字都必须被选取,请找出一条最合适的道路,使得在路上被选取的数字之和是尽可能小的正整数。 输入格式: 输入第1行是两个整数M和N,(2<=M<=10,2<=N<=10),分别表示矩阵的行和列的数目。接下来M行,每行包括N个整数,就是矩阵中的每一行的N个元素。 输出格式: 输出只有一行原创 2022-04-12 20:10:52 · 593 阅读 · 0 评论 -
7-3 最长上升子序列 (20 分)
题目描述: 一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1<= i1 < i2 < ... < iK <= N。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5,翻译 2022-04-12 20:03:23 · 793 阅读 · 0 评论 -
7-2 走迷宫 (20 分)
题目描述: 有一个mn格的迷宫(表示有m行、n列),其中有可走的也有不可走的,如果用1表示可以走,0表示不可以走,输入这mn个数据和起始点、结束点(起始点和结束点都是用两个数据来描述的,分别表示这个点的行号和列号)。现在要你编程找出所有可行的道路,要求所走的路中没有重复的点,走时只能是上下左右四个方向。如果一条路都不可行,则输出相应信息(用-1表示无路)。 输入格式: 第一行是两个数m,n(1< m, n< 15),接下来是m行n列由1和0组成的数据,最后两行是起始点和结束点。 输出格式翻译 2022-04-12 19:59:38 · 1129 阅读 · 0 评论 -
7-1 最长公共子序列 (20 分)
题目描述: 从一个给定的串中删去(不一定连续地删去)0个或0个以上的字符,剩下地字符按原来顺序组成的串。例如:“ ”,“a”,“xb”,“aaa”,“bbb”,“xabb”,“xaaabbb”都是串“xaaabbb”的子序列。(例子中的串不包含引号。) 编程求N个非空串的最长公共子序列的长度。限制:2<=N<=100;N个串中的字符只会是数字0,1,…,9或小写英文字母a,b,…,z;每个串非空且最多含100个字符;N个串的长度的乘积不会超过30000。 输入格式: 文件第1行是一个整数翻译 2022-04-12 19:53:35 · 68395 阅读 · 0 评论