問題
いま,正方形が縦と横にそれぞれN(≦ 64) マスずつ並んでできた “N x N 正方形” を考えます.各マス目にはそれぞれ 1 か 0 のいずれかの数字が書かれています.ここで,隣接した “1” のマスによって形作られる長方形を考え,その中で “最も面積の大きな長方形の数” を出力するプログラムを作成して下さい.
例えば,下図は N = 5 の場合の一例です.この中で作られる長方形の最大面積は 4 であり,面積が 4 である長方形は全部で 3 個あります.したがって,答えは 3 となります.
入力では,まず最初の行でマス目の縦・横サイズ N が与えられます.続く N 行では一行に N 個ずつ各マス目に入る 1 または 0 が空白文字で区切って与えられます.マス目は入力順に左上から埋められていきます(※上図と以下の実行例は同じマス目データを表しています).
出力では,マス目上の隣接する “1” で作られる長方形のうち,面積が最大となる長方形の個数を出力して下さい.
実行例
入力
5 1 1 0 1 0 0 1 1 1 1 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0
出力
3