#51NODP1439. 黏菌网络

黏菌网络

小明正在研究黏菌( 𝑠𝑙𝑖𝑚𝑒𝑚𝑜𝑙𝑑𝑠 )。他有一张网状格栅,共 10×10 个交点,每个交点上可以放置一些物体。他选择了其中 3 个交点,分别放置黏菌( 𝑀 ),糖( 𝑆 ),以及一块有毒物质( 𝑃 ),如样例中所示。

之后观察黏菌是否能避开毒物,并沿网格以最短路线找到糖。

小明希望你先帮忙算出黏菌到达糖之前至少要经过多少个空交点,以便他做实验记录。

输入数据

输入共 10 行,每行一个长度为 10 的字符串描述 10×10 格栅中交点的情况。其中'.'表示空交点,' 𝑀′ 表示放置了黏菌,' 𝑆′ 表示放置了糖,' 𝑃′ 表示放置了毒物。保证输入数据中仅存在一组' 𝑀′,′𝑆′,′𝑃′ 。

输出数据

输出一个整数,表示黏菌经过的空交点的最小数量。

样例

输入样例

..........
..........
..........
..S.......
..........
.....P....
..........
..........
.....M....
..........

输出样例

7