Trượt Băng


Submit solution

Points: 3
Time limit: 1.0s
Memory limit: 10M

Authors:
Problem type

Hôm nay SSLAB không mở, chán quá nên Mạnh đi trượt băng. Mạnh đứng trên 1 lưới có kích thước N x M. Ô (i,j) đại diện cho ô vuông đại diện cho ô thứ i từ phía trên và cột thứ j từ bên trái của lưới này. Mỗi ô vuông của lưới này là băng hoặc đá, được biểu diễn bằng N xâu S1,S2,...,SN có độ dài M như sau. Nếu ký tự j của Si là "." , ô vuông (i,j) là băng. Nếu ký tự j của Si là "#", ô vuông (i,j) là đá. Viền bên ngoài của lưới này (tất cả các ô vuông ở hàng thứ 1, hàng thứ N , cột thứ 1 , cột thứ M) đều là đá. Ban đầu, Mạnh đứng trên ô vuông (2,2) , là một ô băng. Mạnh có thể thực hiện các bước di chuyển theo các hướng sau: Xác định hướng di chuyển: lên, xuống, trái hoặc phải. Tiếp tục di chuyển theo hướng đã chọn cho đến khi Mạnh va vào một ô vuông là đá. Cụ thể, thực hiện các bước sau: Nếu ô vuông tiếp theo trong hướng di chuyển là băng, di chuyển đến ô đó và tiếp tục di chuyển. Nếu ô vuông tiếp theo trong hướng di chuyển là đá, ở lại ô hiện tại và dừng di chuyển.

Hãy tìm số lượng ô vuông băng mà Mạnh có thể tiếp xúc (đi qua hoặc dừng lại) nhaa.

Input

Dòng đầu tiên là 2 số nguyên N,M (3N,M200)

N dòng tiếp theo mỗi dòng là 1 xâu ký tự Si có độ dài M gồm các ký tự "#" và "." .

Ô vuông (i,j) là đá nếu i=1,i=N,j=1 hoặc j=M.

Ô vuông (2,2) là băng.

Output

Số băng nhiều nhất mà Mạnh có thể tiếp xúc(đi qua hoặc dừng lại).

Ví dụ

Đầu Vào

Copy
6 6

######
#....#
#.#..#
#..#.#
#....#
######

Đầu ra

Copy
12

Comments

There are no comments at the moment.