LeetCode - 最大サブシーケンスの152--積(パイソン)

整数NUMSの配列を指定し、(少なくともシーケンス番号を含む)の連続するサブシーケンスの最大シーケンスの積を識別する。

例1:

入力:[2,3、2,4]
出力:6
説明:サブアレイ[2,3]最大商品6。
例2:

入力:[-2,0、-1]
出力:0
説明:[-2、-1]サブアレイされていないため図2に示すように、結果ではありません。

だから、IMAX、IMINは最小と最大の現在のインデックスであります

負に直面したとき、最大値を乗じた負の数が最小となるIMAXとIMINは比較前に、それが交換されなければなりません

1  クラスのソリューション:
 2      デフ maxProduct(自己、NUMS:リスト[INT]) - > INT:
 3          最大= NUMS [0] 
 4          IMAX、IMIN = 1,1
 5           I NUMS:
 6              場合 iは< 0:
 7                  IMAXを、IMIN = IMIN、IMAX
 8              IMAX = MAX(IMAX * I、I)
 9              IMIN =分(IMIN * I、I)
 10              マックス= MAX(IMAX、最大)
 11          リターンマックス

 

おすすめ

転載: www.cnblogs.com/NPC-assange/p/11664849.html