HDU 1003 最大连续子序列

Posted tan90丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 1003 最大连续子序列相关的知识,希望对你有一定的参考价值。

 

  看数据结构与算法分析Java语言描述的时间复杂度分析时,看到经典的最大子序列和问题,想起来这到以前用C++写过,现在学了Java试一下能不能AC。

  PS:不知为什么我前面用System.out.printf()函数一直输出格式错误,交了好几遍都不行,后来改成System.out.println()又可以了...

 

技术分享
 1 import java.util.Scanner;
 2 
 3 public class Main {
 4 
 5     public static void main(String[] args) {
 6         int kase = 0;
 7         int[] arr = new int[100005];
 8         
 9         int t ;
10         Scanner in = new Scanner(System.in);
11         t = in.nextInt();
12         while(t-- != 0){
13             int n = in.nextInt();
14             for(int i = 0; i < n; ++i){
15                 arr[i] = in.nextInt();
16             }
17             int sum = arr[0];
18             int res = sum;
19             int fst = 0, lst = 0;
20             int nfst = 0;
21             for(int i = 1; i < n; ++i){
22                 if(sum < 0){
23                     nfst = i;
24                     sum = arr[i];
25                 }else{
26                     sum += arr[i];
27                 }
28                 
29                 if(sum > res){
30                     fst = nfst;
31                     lst = i;
32                     res = sum;
33                 }
34             }
35             if(kase != 0){
36                 System.out.println();
37             }
38             System.out.println("Case "+(++kase)+":");
39             System.out.println(res+" "+(fst+1)+" "+(lst+1));
40         }
41         in.close();
42     }
43 }
View Code

 

以上是关于HDU 1003 最大连续子序列的主要内容,如果未能解决你的问题,请参考以下文章

HDU1003 最大连续子序列

HDU 1003 最大连续子序列

最大连续子序列和,以及开始结束下标(HDU 1003)

HDU--1003 Max Sum(最大连续子序列和)

《 动态规划_ 入门_最大连续子序列_HDU_1003 》

HDU 1231 最大连续子序列 --- 入门DP