JOI logo
第8回日本情報オリンピック 予選4

2009年12月14日
情報オリンピック日本委員会

問題
   薄氷渡り

問題

冬の寒いある日,JOI太郎君は広場にはった薄氷を割って遊ぶことにした. 広場は長方形で, 東西方向に m 個, 南北方向に n 個, つまり, m × n の区画に区切られている. また, 薄氷が有る区画と無い区画がある. JOI太郎君は,次のルールにしたがって,薄氷を割りながら区画を移動することにした. JOI太郎君が薄氷を割りながら移動できる区画数の最大値を求めるプログラムを作成せよ. ただし, 1 ≦ m ≦ 90,1 ≦ n ≦ 90 である. 与えられる入力データでは, 移動方法は20万通りを超えない.

入力

入力はn+2行ある. 1 行目には整数 m が書かれている. 2 行目には整数 n が書かれている. 3 行目から n+2 行目までの各行には、0 もしくは 1 が, 空白で区切られて m 個書かれており, 各区画に薄氷があるか否かを表している. 北から i 番目,西からj番目の区画を (i,j) と記述することにすると (1 ≦ i ≦ n, 1 ≦ j ≦ m), 第 i+2 行目の j 番目の値は, 区画 (i,j) に薄氷が存在する場合は 1 となり, 区画 (i,j) に薄氷が存在しない場合は 0 となる.

出力

移動できる区画数の最大値を出力せよ.

入出力例

入力例1 入力例2
3
3
1 1 0
1 0 1
1 1 0
  
5
3
1 1 1 0 1
1 1 0 0 0
1 0 0 0 1
   
 
出力例1 出力例2
5
   
5
   
入力例1に対して,
最大値を与える移動方法の例  
入力例2に対して,
最大値を与える移動方法の例
入力例1の場合 入力例2の場合

入力例2に対して, 最大値を与えない移動方法の例
入力例2の場合1 入力例2の場合2 入力例2の場合3 入力例2の場合4 入力例2の場合5

※各入出力例のデータは, 右クリック等によりファイルに保存して利用可能です.


テストデータ

入力データ 入力1 入力2 入力3 入力4 入力5