output_description: Print the area (the number of 0s) of the largest square.
input_description: 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.
attempt: t, *L = open(0)
  H, W = map(int, t.split())
  bef = [0] * (W + 1)
  a = 0
  for l in L:
      cur = [0] * (W + 1)
      for i in range(W):
          if l[i * 2] == "0":
              cur[i + 1] = min(cur[i], bef[i], bef[i + 1]) + 1
      a = max(a, max(cur))
      bef = cur
  print(a**2)
  
problem_description: Largest Square
  
  Given a matrix (H × W) which contains only 1 and 0, find the area of the
  largest square matrix which only contains 0s.
samples: [{"input": "5\n    0 0 1 0 0\n    1 0 0 0 0\n    0 0 0 1 0\n    0 0 0 1 0", "output": "4"}]