Problem
任意の整数の配列が与えられたとします。配列を 1 回通過するだけで連続した部分、つまり数値の合計が最大となる部分を見つけるプログラムを作成してください。
ノート。実際、
のすべての配列要素の合計が得られるように、i
と j
(i<=j
) を見つける必要があります。 ai /sub>
から
aj
までが最大値となります。
入力
最初の行は自然数です
n <= 100000
—配列内の要素の数。次の
n
行は、— の実際の要素を定義します。 30,000 を超えない整数。
インプリント
必要なインデックス値のペアを出力します。このようなペアが複数ある場合、
j
は可能な最小値である必要があり、
j
が等しい場合、
i
の値は最大値である必要があります。可能。 1 行目には
i
を出力し、2 行目には
j
を出力します。
例
<頭>
# |
入力 |
出力 |
<本体>
1 |
5
-1
2
3
-2
2 |
2
3 |
2 |
7
2
-2
3
-1
5
-2
7 |
3
7 |
表>
Запрещенные операторы: sort
; min
; max
; reverse
; count
; sum
; index