#P1979. Red and Black

Red and Black

Description

Hay un cuarto rectangular, cubierto con baldosas cuadradas. Cada baldosa está pintada o de rojo o de negro. Un hombre está de pie en una baldosa negra. Desde una baldosa, él puede moverse a una de las cuatro baldosas adyacentes. Pero no puede moverse sobre baldosas rojas, él puede moverse únicamente sobre baldosas negras.

Escriba un programa que cuente el número de baldosas negras que él puede alcanzar repitiendo los movimientos descritos arriba.

Input

La entrada consiste en múltiples conjuntos de datos. Un conjunto de datos comienza con una línea que contiene dos enteros positivos W y H; W y H son los números de baldosas en la dirección x e y, respectivamente. W y H no son más de 20.

Hay H líneas más en el conjunto de datos, cada una de las cuales incluye W caracteres. Cada caracter representa el color de una baldosa como sigue.

'.' - una baldosa negra '#' - una baldosa roja '@' - un hombre sobre una baldosa negra(aparece exactamente una vez en el conjunto de datos) El final de la entrada es indicado por una línea que consiste en dos ceros.

Output

Para cada conjunto de datos, su programa debe imprimir una línea la cual contiene el número de baldosas que él puede alcanzar desde una baldosa inicial (incluyendo esta baldosa).

6 9
....#.
.....#
......
......
......
......
......
#@...#
.#..#.
11 9
.#.........
.#.#######.
.#.#.....#.
.#.#.###.#.
.#.#..@#.#.
.#.#####.#.
.#.......#.
.#########.
...........
11 6
..#..#..#..
..#..#..#..
..#..#..###
..#..#..#@.
..#..#..#..
..#..#..#..
7 7
..#.#..
..#.#..
###.###
...@...
###.###
..#.#..
..#.#..
0 0
45
59
6
13

Source

Japan 2004 Domestic

Translator

Steinersp