Mảnh vườn của sự hoàn hảo


Submit solution

Points: 3
Time limit: 0.1s
Memory limit: 98M

Author:
Problem types
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

hpit6 có một mảnh vườn do ông cha để lại, anh ta quy hoạch mảnh vườn thành các ô vuông nhỏ rất đẹp. Khi quy hoạch xong anh ta thấy mảnh vường có tất cả N hàng và mỗi hàng gồm M ô vuông nhỏ. Mỗi ô vuông anh ta trồng một cây cà rốt, có những ô anh ta bỏ trống. Là một người thích sự hoàn hảo, anh ta yêu thích các mảnh vườn nhỏ liền kề nhau (những ô vuông nhỏ chung đỉnh sẽ thuộc về cùng 1 mảnh vườn nhỏ) mà trồng toàn cà rốt nhưng mảnh vườn nhỏ này nhất định phải có hình dạng là một hình chữ nhật. Bạn hãy giúp anh ta đếm xem có bao nhiêu mảnh vườn nhỏ chứa toàn cà rốt mà lại có hình dạng hình chữ nhật nhé.

Ví dụ mảnh vườn sau sẽ có 2 mảnh vườn nhỏ HCN :

Input:

  • Dòng 1 gồm N và M. \((1 \le N,M \le 400)\).
  • N dòng tiếp theo mỗi dòng chứa M số 0 hoặc 1, 0 tương ứng với ô trống, 1 tương ứng với ô trồng cà rốt.

Output:

  • In ra số mảnh vườn thỏa mãn.

Ví dụ

Input

5 7
0 1 0 1 0 1 0 
0 0 0 1 0 0 0 
1 1 0 0 0 0 1 
0 0 0 0 0 0 1 
1 1 0 0 0 1 0

Output

5

Comments

There are no comments at the moment.