Chino with Ciste
题号:NC23864
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 128 M,其他语言256 M
64bit IO Format: %lld

题目描述

Chino的数学很差,因此Cocoa非常担心。但是今天Cocoa不准备教Chino什么啦(欢呼!)!
事情是这样的,Cocoa在打扫爷爷的咖啡屋卫生的时候偶然从相框里掉出来一张地图——小镇的传统寻宝游戏Ciste.
游戏的规则也很简单,首先有一个起点,然后是下一个藏有地图的位置。如此下去,最终找到藏宝地点。
Cocoa还没有玩过这个游戏呢,因此她非常期待……寻宝的过程非常快乐,Cocoa也找到了宝物,“宝物就是你决定性的瞬间!”。不过,现在,拿着所有地图的Cocoa看着小镇的地图,给Chino布置了一个作业,以检查自己教学的效果:
假设小镇的地图是一个的网格,其中有一些格子是空地,用’.’表示,可以朝上下左右四个方向中的若干个方向走;另外一些格子是房屋,用’*’表示,不能通过。现在Cocoa在’S’,宝物在’T’,请问Cocoa应该如何选择路线,才能使自己转最少的弯呢?
题目对Chino来说太难啦,你能帮一帮Chino吗?

输入描述:

第一行是两个正整数n, m;接下来是一个的矩阵,表示小镇的地图

输出描述:

最少的拐弯次数。如果不能到达,请输出"troil"(不带引号).
示例1

输入

复制
4 4
S..*
.*.*
....
.*.T

输出

复制
2