沈阳专业网站建设wordpress 插件 卡
- 作者: 五速梦信息网
- 时间: 2026年04月20日 08:47
当前位置: 首页 > news >正文
沈阳专业网站建设,wordpress 插件 卡,中国建筑工程考试网,网站设计建网站目录 Help Jimmy 题目 解题思路 神奇的口袋 题目 枚举的解法 递归的解法 动态规划的解法 滑雪 题目 解题思路 解法一 解法二 Help Jimmy 题目 Help Jimmy 是在下图所示的场景上完成的游戏#xff1a; 场景中包括多个长度和高度各不相同的平台。地面是…目录 Help Jimmy 题目 解题思路 神奇的口袋 题目 枚举的解法 递归的解法 动态规划的解法 滑雪 题目 解题思路 解法一 解法二 Help Jimmy 题目 Help Jimmy 是在下图所示的场景上完成的游戏 场景中包括多个长度和高度各不相同的平台。地面是最低的平台高度为零长度无限。 Jimmy老鼠在时刻0从高于所有平台的某处开始下落它的下落速度始终为1米/秒。当Jimmy落到某个平台上时游戏者选择让它向左还是向右跑它跑动的速度也是1米/秒。当Jimmy跑到平台的边缘时开始继续下落。Jimmy每次下落的高度不能超过MAX米不然就会摔死游戏也会结束。 设计一个程序计算Jimmy到底地面时可能的最早时间。 输入 第一行是测试数据的组数t0 t 20。每组测试数据的第一行是四个整数NXYMAX用空格分隔。N是平台的数目不包括地面X和Y是Jimmy开始下落的位置的横竖坐标MAX是一次下落的最大高度。接下来的N行每行描述一个平台包括三个整数X1[i]X2[i]和H[i]。H[i]表示平台的高度X1[i]和X2[i]表示平台左右端点的横坐标。1 N 1000-20000 X, X1[i], X2[i] 200000 H[i] Y 20000i 1..N。所有坐标的单位都是米。 Jimmy的大小和平台的厚度均忽略不计。如果Jimmy恰好落在某个平台的边缘被视为落在平台上。所有的平台均不重叠或相连。测试数据保证问题一定有解。 1 3 8 17 20 0 10 8 0 10 13 4 14 3 输出 对输入的每组测试数据输出一个整数Jimmy到底地面时可能的最早时间。 23 解题思路 Jimmv跳到一块板上后可以有两种选择向左走或向右走。 走到左端和走到右端所需的时间是很容易算的。 如果我们能知道以左端为起点到达地面的最短时间和以右端为起点到达地面的最短时间那么向左走还是向右走就很容选择了。 因此整个问题就被分解成两个子问题即Jimmv所在位置下方第一块板左端为起点到地面的最短时间和右端为起点到地面的最短时间。 这两个子问题在形式上和原问题是完全一致的。将板子从上到下从1开始进行无重复的编号(越高的板子编号越小高度相同的几块板子哪块编号在前无所谓那么和上面两个子问题相关的变量就只有板子的编号。 不妨认为Jimmy开始的位置是一个编号为0长度为0的板子假设LeftMinTime(k)表示从k号板子左端到地面的最短时间RightMinTime(k)表示从k号板子右端到地面的最短时间那么求板子k左端点到地面的最短时间的方法如下 if板子k左端正下方没有别的板子){if( 板子k的高度 h(k) 大于Max)LeftMinTime(k) 00;elseLeftMinTime(k) h(k); } else if( 板子k左端正下方的板子编号是m){LeftMinTime(k) h(k)-h(m) Min( LeftMinTime(m) Lx(k)-Lx(m) RightMinTime(m) Rx(m)-Lx(k)); } 上面h(i)就代表i号板子的高度Lx(i)就代表i号板子左端点的横坐标Rx(i)就代表i号板子右端点的横坐标。那么 h(k)-hm)当然就是从k号板子跳到m号板子所需要的时间Lx(k)-Lx(m) 就是从m号板子的落脚点走到m号板子左端点的时间Rx(m)-Lx(k)就是从m号板子的落脚点走到右端点所需的时间。 求RightMinTimek的过程类似。 不妨认为Jimmy开始的位置是一个编号为0长度为0的板子那么整个问题就是要求LeftMinTime(0。 输入数据中板子并没有按高度排序所以程序中一定要首先将板子排序。 时间复杂度 一共 n个板子每个左右两端的最小时间各算一次O(n 找出板子一段到地面之间有那块板子需要遍历板子 O(n) 总的时间复杂度O(n2 神奇的口袋 题目 有一个神奇的口袋总的容积是40用这个口袋可以变出一些物品这些物品的总体积必须是40。John现在有n个想要得到的物品每个物品的体积分别是a1a2……an。John可以从这些物品中选择一些如果选出的物体的总体积是40那么利用这个神奇的口袋John就可以得到这些物品。现在的问题是John有多少种不同的选择物品的方式。 输入 输入的第一行是正整数n (1 n 20)表示不同的物品的数目。接下来的n行每行有一个1到40之间的正整数分别给出a1a2……an的值。 3 20 20 20 输出 输出不同的选择物品的方式的数目。 3 枚举的解法 枚举每个物品是选还是不选一共2的20次方种情况。 递归的解法 #include iostream using namespace std; int a[30]; int N; int Ways(int w ,int k){//从前k种物品中选择一些凑成体积w的做法数目if(w0) return 1;if(k0) return 0;elsereturn Ways(wk-1)Ways(w-a[k],k -1 ); }int main(){cin N;for(int i1;iN;i)cin a[i];cout Ways(40,N);return 0; } 动态规划的解法 #include iostream using namespace std; int a[30]; int N; int Ways[50][50]://Ways[i][j]表示从前i种物品里凑出体积i的方法数 int main(){cin N;memset(Ways,0,sizeof(Ways));for( int i 1;i N; i){cin a[i];I Ways[0][i]1;}Ways[0][0] 1;for(int w1;w40; W){for(int k 1;K N;K){Ways[w][k]Ways[w][k-1];if( w-a[k] 0)Ways[w][k] Ways[w-a[k]][k-1];}}cout Ways [40] [N] ;return 0; } 滑雪 题目 Michael喜欢滑雪百这并不奇怪 因为滑雪的确很刺激。可是为了获得速度滑的区域必须向下倾斜而且当你滑到坡底你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 一个人可以从某个点滑向上下左右相邻四个点之一当且仅当高度减小。在上面的例子中一条可滑行的滑坡为24-17-16-1。当然25-24-23-…-3-2-1更长。事实上这是最长的一条。 输入 输入的第一行表示区域的行数R和列数C(1 R,C 100)。下面是R行每行有C个整数代表高度h0h10000。 5 5 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 输出 输出最长区域的长度。 25 解题思路 L(ij)表示从点ii出发的最长滑行长度。 一个点(ii如果周围没有比它低的点L(ij1 否则 递推公式L(ij等于(i.i)周围四个点中比(ij)低且L值最大的那个点的L值再加1 复杂度On2 解法一 “人人为我”式递推 L(i.j表示从点i.j出发的最长滑行长度。 一个点(i.j).如果周围没有比它低的点L(i.j)1 将所有点按高度从小到大排序。每个点的L值都初始化为1从小到大遍历所有的点。经过一个点(i.j)时用递推公式求L(i.j) 解法二 “我为人人”式递推 L(i,j表示从点(i,j出发的最长滑行长度。 一个点(i.j)如果周围没有比它低的点L(i,j)1 将所有点按高度从小到大排序。每个点的L值都初始化为1 从小到大遍历所有的点。经过一个点(ii)时要更新他周围的比它高的点的L值。例如 if H(i1,j)H(ij) //H代表高度 L(i1,j)max(L(i1,j),L(i,j)1
- 上一篇: 沈阳中小企业网站制作做商务网站需要什么资料
- 下一篇: 沈阳专业网站建设企业龙华网站建设深圳信科
相关文章
-
沈阳中小企业网站制作做商务网站需要什么资料
沈阳中小企业网站制作做商务网站需要什么资料
- 技术栈
- 2026年04月20日
-
沈阳有什么服务网站wordpress edd 会员
沈阳有什么服务网站wordpress edd 会员
- 技术栈
- 2026年04月20日
-
沈阳想做网站中国公路建设在哪个网站公示
沈阳想做网站中国公路建设在哪个网站公示
- 技术栈
- 2026年04月20日
-
沈阳专业网站建设企业龙华网站建设深圳信科
沈阳专业网站建设企业龙华网站建设深圳信科
- 技术栈
- 2026年04月20日
-
沈阳装修公司网站建设淘宝小程序开发文档
沈阳装修公司网站建设淘宝小程序开发文档
- 技术栈
- 2026年04月20日
-
沈阳做网站wordpress skype
沈阳做网站wordpress skype
- 技术栈
- 2026年04月20日
