11656. Подорож по сітці
Існує квадратна сітка \(H \times W\) з \(H\) горизонтальними рядками і \(W\) вертикальними стовпцями. Нехай (\(i, j\)) позначають квадрат в \(i\)-му рядку зверху і \(j\)-му стовпці зліва. Кожен квадрат описується символом \(C_{i, j}\), де \(C_{i, j}\) = '.' означає (\(i, j\)) є порожнім квадратом, а \(C_{i, j} =\) '#' означає (\(i, j\)) є стіною.
Степан почне ходити по цій сітці. Коли він на (\(i, j\)), він може перейти до (\(i, j + 1\)) або (\(i + 1, j\)). Однак він не може вийти з сітки або увійти в квадрат стіни. Він зупиниться, коли більше не буде площі, куди можна йти.
Починаючи з (1, 1), скільки квадратів може відвідати Степан, перш ніж зупиниться?
Формат вхідних даних
Перший рядок містить цілі числа \(H,W\) (\(1 \le H,W \le 100\))
Наступні \(H\) рядків містять по \(W\) симсволів \(C_{i,j}\) (\(C_{i,j}=\)'.','#', \(C_{1,1}=\)'.')
Формат вихідних даних
У вихідний потік виведіть шукану кількість квадратів.
Примітка
До прикладу 1:
Наприклад, перейшовши \((1, 1) \rightarrow (2, 1) \rightarrow (2, 2) \rightarrow (3, 2)\), він може відвідати 4 квадрата. Він не може відвідати 5 або більше квадратів.
Приклад вхідних даних
3 4
.#..
..#.
..##
Приклад вихідних даних
4
Приклад вхідних даних
1 1
.
Приклад вихідних даних
1
Приклад вхідних даних
5 5
.....
.....
.....
.....
.....
Приклад вихідних даних
9
Коментарі