Menu
CoddyTech

Max Consecutive Ones

すべての値が0または1である配列numsが与えられます。ランとは、間に0がなく、隣り合って並んだ1の連続部分です。最長のランの長さを返してください。配列に1が1つも含まれていない場合は、0を返してください。

関数

findMaxConsecutiveOnes(nums: integer-array) → integer
numsinteger-array
0と1の配列
戻り値integer
連続する1の最長の並びの長さ

制約

  • 1 ≤ nums.length ≤ 2 × 104
  • すべての nums[i] は 0 または 1 です。

例

入力
nums = [1, 1, 0, 1, 1, 1, 0, 1]
出力
3
説明
1は3つの連続区間を形成します。インデックス0から1まで(長さ2)、3から5まで(長さ3)、そしてインデックス7のみ(長さ1)です。最長の区間の長さは3です。
challenge icon

発展問題

最大 k 個のゼロを 1 に反転できるとしたらどうでしょうか?最長の連続部分はいくつまで長くなり、一度の走査でそれを見つけられるでしょうか?

コードをリセット
def findMaxConsecutiveOnes(nums):
    # ここにコードを書いてください

テスト #1

テスト #2

テスト #3

引数

nums = [1, 1, 0, 1, 1, 1, 0, 1]

期待される出力

3