#P0213. 小田抓牛

小田抓牛

小田抓牛

题目描述

小田养的两只牛逃跑到了森林里,现在小田需要去追捕这两头牛。而你作为小田的资深技术顾问,需要帮小田模拟这次追捕行动。

追捕行动在一个 10×1010 \times 10 的平面网格内进行。一个网格可以是:

  • . 表示空地;
  • * 表示障碍物;
  • C 表示两头牛;
  • T 表示小田。

牛和小田可以同时位于一个格子中,但他们都不能进入有障碍物的格子。

两头牛会一起行动,它们在网格中以固定的方式游荡。每分钟它们可以进行一次向前移动或者一次转弯。如果它们前方无障碍,它们会按照原来的方向前进一步,否则它们会用这一分钟顺时针转 9090 度,同时它们也不会离开地图。

小田很清楚牛的移动方式,所以他也会采取这种方式移动。

小田和牛会同时开始按照上述方式进行移动,只有在小田和牛同时位于同一格子时,才认为小田追到了牛。

现在给你这个平面网格,并假设小田和牛最开始的行动方向都是正北(即往上走)。请你计算小田最少需要多少分钟才能追到牛,如果小田和牛永远无法相遇,输出 00

输入描述

输入包含 1010 行。

每行输入 1010 个字符,其中字符 . 表示空地,* 表示障碍物,C 表示两头牛,T 表示小田,保证只会有一个 CT

输出描述

输出包含一行一个整数,表示最终的答案。

输入输出样例

输入 #1

*...*.....
......*...
...*...*..
..........
...*.T....
*.....*...
...*......
..C......*
...*.*....
.*.*......

输出 #1

49

说明/提示

略。