HDU 1231の最大連続配列(動的プログラミング)

最大の連続サブシーケンス

制限時間:1000分の2000 MS(Javaの/その他)メモリの制限:32768分の65536 K(Javaの/その他)
の合計提出(S):43843受理提出(S):20002

 

問題の説明

 

K整数{N1、N2、...、NKの配列所与 }、 ニッケルの連続サブシーケンスとして表すことができる任意のそれらの{たNi +の、1、...、
ニュージャージー} 1 <iが= J <=、< = K. 最大連続配列は、すべての要素および最大の連続サブシーケンスであり
、例えば、所定のシーケンス{-2、11 -4、13 -5、-2}、最大連続サブシーケンス{11、-4 13}、および最大
20。
論文では、今年のデータ構造では、最大の増加を得るためにプログラミングが必要になりましたまた、出力に必要な要件である
最初と最後の要素の順序を。

 


入力

 

テストケースを複数含む試験入力、ライン2を表す各試験は、1行目は、正の整数K(<10000)を与える、2行目は、スペースで区切られた、Kの整数を与えます。Kは0、ケースを処理していない入力の終わりである場合。

 


出力

 

各試験のために、ライン1における最大出力と最大連続シーケンスの最初と最後の要素
の要素は、空白で区切られました。最大連続サブシーケンスが一意でない場合、出力番号iとj、最小のもの(例えば、入力サンプルグループ2及び3)。すべての要素Kは負であり、定義されている場合、最大は0、包括的要素のシーケンス全体の出力です。

 


6 
- 2  11 - 4  13 - 5 - 2 
10 
- 10  1  2  3  4 - 5 - 23  3  7 - 21 
6 
5 - 8  3  2  5  0 
1 
10 
3 
- 1 - 5 - 2 
3 
- 1  0 - 2 
0

サンプル出力

20  11  13 
10  1  4 
10  3  5 
10  10  10 
0 - 1 - 2 
0  0  0 

ヒント
ヒント
 
巨大な入力、scanf関数をれる推奨。

トピック分析

合計<0の場合DPアレイは、さらに必要はないだけいくつかのレコードと連続する現在のシーケンスを合計するために、現在のシーケンスを後続の要素、更新された和のための重要性を表していない、そして、最大値か否かを判断します、それは記録する最大の更新間隔のインデックスがある場合。質問が尋ねたことに注意してください:すべての要素がKが負で、かつ、最大値は0である包括的要素のシーケンス全体の出力を定義している場合。

コード

#include <ビット/ STDC ++ H> 使用して名前空間STDを、int型 ANSS、和、L、R、anssl、anssr、I、N、[ 10005 ]。INT メイン()
{ 一方(scanf関数(" %のD "、&​​n)は、N!= 0 
    { (i = 1 ; iが<= N iが++ 
        { 
            scanf関数(" %のD "、および[I])。
        }  = [ 1 ]。
        L = 1 
        R = 1 
        anssl

 




    
        = 1 ; 
        anssr = 1 
        ANSS = A [ 1 ]。
        以下のための(I = 2 ; iが<= N; iが++ 
        { 
            場合(合計< 0 
            { 
                合計は = [I]。
                L = I。
                R = I。
            } 
            
            {  + = A [i]は、
                R ++ ; 
            } 
            であれば(和> ANSS)
            { 
                ANSS = 和。
                anssl = L。
                anssr = R。
            } 
        } 
        もし(ANSS < 0 
        { 
            のprintf(" 0%D%d個の\ n "、[ 1 ]、[N])。
        } 
        
        { 
            のprintf(" %D%D%D \ n " 、ANSS、[anssl]、[anssr])。
        } 
    } 
}

 

 

おすすめ

転載: www.cnblogs.com/dyhaohaoxuexi/p/11432844.html