#P10486. 电路维修

电路维修

题目描述

有一天 Mark 和 James 的飞行车没有办法启动 了,经过检查发现原来是电路板的故障。飞行车的 电路板设计很奇葩,如下图所示:

电路板可以表示为一个 RRCC 列的方格表,每个格子中都有一个标准件,连接一条对角线上的两个接点。标准件的方向可以旋转,从而连接另一条对角线的两个接点。电源与左上角的接点相连,而发动机与右下角的接点相连。Mark 和 James 发现现在电源和发动机根本就没有连上。出于对这种奇葩设计的尊重,他们只能通过旋转标准件来维修电路。

Elf 想要帮助他们,让他们旋转标准件的次数尽量小,但是电路的规模实在是太大了,于是她找到了你,希望你能够帮助她解决这个问题。

输入格式

输入文件包含多组测试数据。

第一行包含一个整数 TT,表示测试数据的数目。

对于每组测试数据,第一行包含正整数 RRCC,表示电路板的行数和列数。

之后 RR 行,每行 CC 个字符,字符是"/""\"中的一个,表示标准件的方向。

输出格式

对于每组测试数据,在单独的一行输出一个正整数,表示所需的最小旋转次数。

如果无论怎样都不能使得电源和发动机之间连通,输出 NO SOLUTION

1
3 5
\\/\\
\\///
/\\\\
1

提示

对于 40%40\% 的数据,R,C5R,C\leq 5

对于 100%100\% 的数据,1R,C5001\leq R,C\leq 5001T51\leq T\leq 5