Problem:
Largest Rectangle

Given a matrix (H × W) which contains only 1 and 0, find the area of the largest rectangle which only contains 0s.

Input

H W
c1,1 c1,2 ... c1,W
c2,1 c2,2 ... c2,W
:
cH,1 cH,2 ... cH,W

In the first line, two integers H and W separated by a space character are given. In the following H lines, ci,j, elements of the H × W matrix, are given.

Output

Print the area (the number of 0s) of the largest rectangle.

Constraints

1 ≤ H, W ≤ 1,400

Sample Input

4 5
0 0 1 0 0
1 0 0 0 0
0 0 0 1 0
0 0 0 1 0

Sample Output

6

Solution in Ruby (judge verdict: Time Limit Exceeded)

H,W = gets.split().map(&:to_i)
a = [0] * W
r = 0
H.times do |i|
	a = a.map{|b| b+1}
	row = gets.split().map(&:to_i)
	row.each.with_index(0) do |c, i|
		if c == 1
			a[i] = 0
			next
		end
		ma = a[i]
		i.downto(0) do |j|
			break if row[j] == 1
			ma = a[j] if a[j] < ma
			d = (i-j+1) * ma
			r = d if d > r
		end
	end
end
p r