2082: 宝典2第十章猫和老鼠
Description
【题目描述】猫和老鼠(catmouse.cpp/c/pas)
修罗王最后终于发现,原来所谓的上古神器不过是天顶星人(你没看错,是和经典动画片《太空堡垒》中的天顶星人一个名字)设下的一个骗局。
天顶星人的科技水平极为发达,如果说魔法世界的文明属于第一级宇宙文明,即活动范围仅局限于母星及其卫星的话,那么天顶星人的文明早已迈进第四级宇宙文明,其活动范围已扩展至泛河外星系。悠久而漫长的岁月使他们最终获得了宇宙食物链的奥秘所在,并得知要想获得永恒的生命,就必须使用特别的方法不断地获取其他星球智慧生物的生命力(命源)。
当然,这个世界永远是平衡的,如同高级生命体对低级生命体拥有绝对支配权一样,虽然高级文明拥有对低级文明的绝对支配权,但若低级文明的智慧生物具有强烈的不可被摧毁的意志,那么再高级的宇宙文明对此也是无可奈何的。所以古往今来的哲人智士留下了无数的箴言告诫我们,诸如“命运掌握在自己手中”,“天行健,君子以自强不息”,“穷且益坚,不坠青云之志”,“意志坚强,就会战胜恶运”等等。
现在,天顶星人想玩一个“猫捉老鼠”的游戏,以彻底摧毁修罗王的意志。已知天顶星人和修罗王在10×10的方格中运动,例如:
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......*
...*.*....
.*.*......
C=天顶星人
M=修罗王
*=障碍物
.=空地
天顶星人和修罗王每秒钟走一格,如果在某一秒末他们在同一格中,那么天顶星人就抓住修罗王了。 注意,“对穿”是不算的。天顶星人和修罗王的移动方式相同:平时沿直线走,下一步如果会碰到障碍物或者出界, 就用1秒的时间做一个右转90度。一开始他们都面向北方。
编程计算多少秒以后天顶星人抓住修罗王。
【输入格式】
第一行为一整数N,表示有N组测试数据。
每组测试数据为10行,格式如题目描述。
【输出格式】
相遇时间T。如果100步内无解,输出-1。
【输入样例】
1
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......*
...*.*....
.*.*......
【输出样例】
49