Menu
CoddyTech

Number of Islands

ふつうグラフpython iconjava iconcpp iconc iconjs icon+10

同じ長さの文字列のリストとしてマップが与えられます。'1'は陸地のマス、'0'は水のマスです。上下左右のいずれかの辺を共有する陸地のマスは、同じ島に属します。角だけで接しているマスはつながっていません。島の数を返してください。

関数

numIslands(grid: string-array) → integer
gridstring-array
マップは、1行につき1つの文字列
戻り値integer
島の数

制約

  • 1 ≤ grid.length ≤ 150
  • 1 ≤ grid[i].length ≤ 150
  • すべての行の長さは同じです。
  • すべての文字は'0'または'1'です。

例

入力
grid = ["11000", "11000", "00100", "00011"]
出力
3
説明
左上の4つのマスは、1つの島を形成しています。3行目の中央のマスは角でしか接していないため、2つ目の島です。右下の2つのマスが3つ目です。
challenge icon

発展問題

陸地は今、水の地図上に一マスずつ現れます。地図全体をもう一度調べずに、新しいマスが追加されるたびに島の数を報告できますか?

コードをリセット
def numIslands(grid):
    # ここにコードを記述してください

テスト #1

テスト #2

引数

grid = ["11000", "11000", "00100", "00011"]

期待される出力

3