程序设计实习.ppt

程序设计实习.ppt

POJ1088:滑雪 从下往上逆行 按高度排序:qsort 在A点:已经走了X步 周围点走,能走到B:从B已经可以滑Y步 X+1Y :从B可以滑X+1步 定义合适的结构 高度 X坐标 Y坐标 可向下滑的最大步骤 走到A,找B:bseach A的高度+1 A的前、后、左、右 POJ2766:最大子矩阵 题目描述 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵。 比如,如下4 * 4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 的最大子矩阵是 9 2 -4 1 -1 8 这个子矩阵的大小是15。 解题思路 首先考虑一维的情况: 数列a1,a2,…,an,它的子数列定义为 s(i,j)=ai+…+aj。求最大子数列。 设b(j)=max{s(i,j),i=1,2,…,j}。那么有递推方程b(j)=max{b(j-1)+aj,aj} 然后考虑二维降一维的方法: arr[][]为原矩阵,能够把arr的第i行到第j行压缩?可以! 设a[k]=arr[i][k]+arr[i+1][k]+…+arr[j][k],k=1,2,…,n。那么a是arr第i行到第j行子矩阵的压缩。 解题思路 时间复杂度是O(n^3) 课后思考题:如果一个三维的数据立方体arr

文档评论(0)

1亿VIP精品文档

相关文档