编程题
### 问题描述
小齐在一片空地上放置了一些镜子,每个镜子都是双面的,呈矩形排列,形成一个 $N \times M$ 的区域。每个镜子通过 '/' 或 '' 字符表示,分别连接矩形的对角线的两个相对角。
一天晚上,小齐带着一个激光笔来到这片镜子区域。站在区域外,他将光束水平或垂直照射到区域的某一行或某一列,使光束反射在一些镜子上。由于所有镜子都是对角取向的,反射后的光束会在垂直和水平之间切换。小齐想知道,在给定镜子区域的布局情况下,他的光束最多能被反射多少次。请帮助小齐计算这个数字。
### 输入格式
第一行:两个整数 $N$ 和 $M$,用空格分隔。
接下来的 $N$ 行:每行包含 $M$ 个 / 或 \\ 字符,描述了镜子区域的每一行。
### 输出格式
一个整数,表示激光从区域外发射,最多可以在反射过程中经过的镜子次数。如果可以无限反射,请输出 $-1$。
### 样例输入
```
3 3
/\\
\\\
/\/
```
### 样例输出
```
3
```
### 评测数据规模
$1 \leq N, M \leq 1,000$。