poj1050 二维数组最大子序列矩阵和
2012-08-07 21:47
357 查看
public class Main { public int findMaxSumOneDimensions(int[] arr) { int len = arr.length; int max = arr[0], sum = max; for (int i = 1; i < len; i++) { sum += arr[i]; if (sum < 0) sum = arr[i]; if (max <= sum) max = sum; } return max; } public int findMaxSumTwoDimensions(int[][] arr, int N) { int max = 0; int[] b = new int ; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) b[j] = 0; for (int j = i; j < N; j++) { for (int k = 0; k < N; k++) b[k] += arr[j][k]; int temp = findMaxSumOneDimensions(b); if (temp >= max) max = temp; } } return max; } public static void main(String[] args) throws FileNotFoundException { // Scanner scanner = new Scanner(new BufferedInputStream(new // FileInputStream(new File("E:\\input.txt")))); Main main = new Main(); Scanner scanner = new Scanner(new BufferedInputStream(System.in)); int N = scanner.nextInt(); int[][] arr = new int ; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { arr[i][j] = scanner.nextInt(); } } System.out.println(main.findMaxSumTwoDimensions(arr, N)); } }
相关文章推荐
- poj 1050 To the Max 二维矩阵转换一维求子序列最大值
- poj1050 动态规划 求二维数组中子矩阵和的最大值
- POJ 1050,HDU 1003 最大连续子序列和
- poj 1050 To the Max(最大子矩阵之和,基础DP题)
- poj1050 二维数组最大子序列矩阵和
- poj 1050 求矩阵的子矩阵的元素和最大
- poj 1050 nyoj104 矩阵最大和
- POJ 1050 To the Max【最大子矩阵】
- poj 1050 求矩阵最大的子矩阵和 DP
- POJ-1050 动态规划 子矩阵最大值,二位转一维处理
- POJ 1050 To the Max(最大字矩阵)【模板】
- POJ-1050-To the Max-二维最大子序列和
- Poj1050_To the Max(二维数组最大字段和)
- Poj1050_To the Max(二维数组最大字段和)
- (三) POJ1050,动态规划必做题目,经典程度五颗星。这个题目的前身就是:求最大子序列和。 先来看最大子序列和。有一串数,有正有负,如2,-1,5,4,-9,7,0,3,-5。求:这
- Poj1050_To the Max(二维数组最大字段和)
- poj 1050 To the Max(最大子矩阵之和)
- Poj 1050 To the Max (最大子矩阵 DP)
- hdu 1003/poj 1050 连续子序列最大和经典基础dp
- poj 1050 To the Max 求矩阵中局部矩形区域和最大值