acm-1003 求一个数组中连续区间和的最大值问题
来源:互联网 发布:括号匹配的检验算法 编辑:程序博客网 时间:2024/05/21 09:06
时间复杂度为n的方法:
import java.util.Scanner;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int max = 0, sum1 = 0, first1 = 0, end1 = 0; int ar = 0, num = 0; for (int i = 0; i < n; i++) { num = sc.nextInt(); for (int j = 0; j < num; j++) { ar = sc.nextInt(); if (sum1 < 0) { sum1 = ar; first1 = j; } else { sum1 += ar; } if (sum1 > max) { max = sum1; end1 = j; } } System.out.println("Case " + (int) (i + 1) + ":"); System.out.println(max + " " + (int) (first1 + 1) + " " + (int) (end1 + 1)); max = 0; sum1 = 0; first1 = 0; end1 = 0; } }}
时间复杂度为n^2的方法:
import java.util.Scanner;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int sum = 0, sum1 = 0, first = 0, end = 0, first1 = 0, end1 = 0; for (int i = 0; i < n; i++) { int num = sc.nextInt(); int[] ar = new int[num]; for (int j = 0; j < num; j++) { ar[j] = sc.nextInt(); } for (int j = 0; j < num; j++) { if (ar[j] >= 0) { for (int k = j; k < ar.length; k++) { sum1 += ar[k]; if (sum1 < 0) break; if (sum1 > sum) { sum = sum1; first = j; end = k; } } sum1 = 0; } } System.out.println("Case " + (int) (i + 1) + ":"); System.out.println(sum + " " + (int) (first + 1) + " " + (int) (end + 1)); sum = 0; first = 0; end = 0; } }}
http://my.oschina.net/u/180716/blog/86005
acm-1003
0 0
- acm-1003 求一个数组中连续区间和的最大值问题
- 求一个数组中序列连续数的最大值
- 求连续子数组和的最大值的变种问题
- 求数组中任意连续位置元素和的最大值
- 求数组中连续区间的和最大
- 求数组中区间中最小数*区间所有数和的最大值
- 求数组中区间中最小数*区间所有数和的最大值
- 求数组中连续子数组的最大值
- 求一个数组中连续子数组的最大和
- 求数组中连续三个数和得最大值
- JAVA :在给定一个数组中,可以取得多个连续的子串。在众多子串中,求各元素和为最大值的连续子串!
- 每日一算法:求连续子数组和的最大值
- 树状数组求区间最大值一类问题
- 求一个连续子序列的和的最大值
- 一个整形数组中有正数也有负数,数组中连续一个或多个组成子数组,每个子数组都有一个和,求所有子数组中和的最大值
- 一个整形数组中有正数也有负数,数组中连续一个或多个组成子数组,每个子数组都有一个和,求所有子数组中和的最大值
- 一个整形数组中有正数也有负数, 数组中连续一个或多个组成子数组,每个子数组都有一个和, 求所有子数组中和的最大值
- 连续数组和的最大值
- 1003. 我要通过!(20)
- 重拾C语言(1)
- 前四章——老师类与学生类
- (7-5)hive的web界面和JDBC模式
- Deep Learning for NLP 文章列举
- acm-1003 求一个数组中连续区间和的最大值问题
- jsp简单方法小结
- What Are Your Career Expectations?
- 程序猿常用sql语句
- vmware网络的三种连接方式
- 3D数学基础:图形与游戏开发》阅读感言
- Java中读写锁ReadWriteLock的使用示例
- Struts1.x系列教程(10):Validator验证框架入门
- LeetCode 082~083 Remove Duplicates from Sorted List