摘自《数据结构,算法与应用-C++描述》第13章习题
假定有一个堆栈,其中有n 个纸盒,纸盒1位于栈顶,纸盒n 位于栈底。每个纸盒的宽
度为w,深度为d。第i 个纸盒的高度为hi 。堆栈的体积为w*d*sum(h)
在堆栈折叠(stack folding)问题中,选择一个折叠点i 把堆栈分解成两个子堆栈,其中一个子堆栈包含纸盒1至i,另一个子堆栈包含纸盒i+ 1至n。重复这种折叠过程,可以得到若干个堆栈。如果创建了s 个堆栈,则这些堆栈所需要的空间宽度为s*w,深度为d,高度h 为最高堆栈的高度。s 个堆栈所需要的空间容量为s*w*d*h。
问题:对于给定的高度H, 将堆栈折叠为最小数目的子堆栈,使得每个子堆栈的高度均不超过H
==================== 上题分析 =====================
学生作弊概率分析
设此学生参加每次考试的概率为P(i), i=1,2,3,4。 则P(1) * P(2) * P(3) * P(4) = 0.9, 现在需要计算P(2) * P(3) * P(4),因为P(1) < 1, 因此结果不可能小于0.9
阅读(1767) | 评论(0) | 转发(0) |