题目描述
Battleships是一款游戏,最初使用铅笔和纸模拟一场海战。它已经有超过一百年的历史了,世界各地的孩子都玩过,甚至早在1890年俄罗斯海军军官就可能玩过。维基百科全书(Wikipedia)说:“游戏在方格(纸或木板)上进行,每个玩家的舰队(包括战列舰)都标记在方格上,舰队的位置是私密的,其他玩家不知道,每个玩家轮流向其他玩家‘射击’,优先摧毁对方舰队者胜利”。
这个问题需要模拟游戏中的玩家A,对玩家B射击。在游戏中,舰队由以下船只组成:
船只 长度
战列舰(battleship) 5
驱逐舰(destroyer) 4
巡洋舰(cruiser) 3
潜艇(submarine) 2
所有船只均符合下列要求:
•船只必须垂直、水平或斜着放在连续的方格上
•船只不得重叠
•船只不得弯曲
•船只必须完整。
在样例解释中,将会有一个正在进行游戏的合法舰队的示意图。
你的任务是对照舰队检查每一次射击是否击中,每个方格的位置由列(字母,A~J)和行(数字,1~10)定义。
输入格式
前4行表示舰队的位置,从第5行开始,每行表示敌方的射击位置。每艘船只的位置由船只两端的方格确定,第一个给定的方格将是两个列号中较小的一个(字母较小的那个),或者,对于垂直排列的容器,是两个行号中较小的一个(数字较小的那个),一行上的所有数据将以空格分隔。
第一行输入战列舰的位置。
第二行输入驱逐舰的位置。
第三行输入巡洋舰的位置。
第四行输入潜艇的位置。
从第5行开始,每行输入一个方格,表示敌人射击的位置,输入X0时表示输入结束。
输出格式
对于每个射击,输出一行,有两种情况:
1.Miss,表示没有击中舰船
2.Hit <船只类型> <船只布局>
船只类型有battleship(战列舰)、destroyer(驱逐舰)、cruiser(巡洋舰)和submarine(潜艇)。
船只布局有Vertical(垂直)、Horizontal(水平)和Diagonal(斜放)。
样例数据
input
B3 B7
E3 H3
B9 D7
C5 D6
F4
D6
E7
E5
C5
X0
output
Miss
Hit submarine Diagonal
Miss
Miss
Hit submarine Diagonal